- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
#include <stdio.h>
#include <stdlib.h>
#define value_i int
#define gen_program main()
#define begin {
#define end }
#define sep ;
#define back_val return
#define vis(a) printf ("%d", a)
#define ln printf ("\n")
#define ln3 printf ("\n\n\n")
#define cycle_count for
#define rand rand()
#define gen_rand srand((unsigned)time(NULL))
#define value_c char
#define vis_c(a) printf("%c", a)
#define eq =
#define uneq !=
#define check ==
#define inc(a) a++
#define res %
#define add +
#define sub -
#define blank void
#define small <
#define big >
blank line(blank) sep
value_i gen_program
begin
value_i x, i sep
gen_rand sep
value_c c eq ' ' sep
cycle_count(i eq 1 sep i small 10 sep inc(i))
begin
x eq rand res 10 add 1 sep
if (x uneq 10)
begin
vis(x) sep
vis_c(c) sep
end
end
ln3 sep
line() sep
ln sep
back_val 0 sep
end
blank line(blank)
begin
value_i i sep
cycle_count (i eq 0 sep i small 10 sep inc(i) )
begin
printf("-/*\\") sep
end
printf("-") sep
end
guest 01.03.2014 17:13 # −7
Hammer 01.03.2014 20:30 # −3
guest 04.03.2014 10:10 # −4
bormand 01.03.2014 17:18 # +6
gcc -E, и можно рефакторить :)
bormand 01.03.2014 17:18 # +5
Ну less же...
1024-- 01.03.2014 18:06 # +2
Hammer 01.03.2014 18:20 # −3
1024-- 01.03.2014 18:24 # +3
begin/end вместо скобок можно принять, чтобы не разгневать паскалеверующих, да и смирился я с ними, а вот sep вместо точки с запятой - очень странное решение.
Только потом я увидел, что тут весь код такой.
inkanus-gray 01.03.2014 18:44 # +4
roman-kashitsyn 01.03.2014 20:43 # 0
Hammer 01.03.2014 20:31 # −3
Hammer 01.03.2014 20:32 # −3
TarasB 01.03.2014 20:46 # +2
Anderson 04.03.2014 02:00 # +4
guest 04.03.2014 10:11 # −17
guest 07.03.2014 13:31 # −9
Stertor 07.03.2014 14:27 # −5
guest 07.03.2014 18:06 # −8
Stertor 07.03.2014 19:13 # −7
Stertor 07.03.2014 19:16 # −7
bormand 07.03.2014 19:17 # +2
chtulhu 08.03.2014 04:47 # −1
Stertor 09.03.2014 19:32 # 0
guest 11.03.2014 00:49 # −1
TarasB 07.03.2014 19:50 # −6
два долбоёба, загнавших CS в глубокую задницу
3.14159265 07.03.2014 20:17 # −2
TarasB 08.03.2014 15:48 # −3
3.14159265 08.03.2014 17:12 # +2
Делали на основе BPCL и PL/1. В сравнении с PL/1 язык получился весьма простым и годным.
И в 60-х, 70-х ничего другого и не требовалось.
TarasB 08.03.2014 18:07 # 0
guest 08.03.2014 15:02 # −1
3.14159265 08.03.2014 17:13 # +3
guest 08.03.2014 18:02 # 0
guest 08.03.2014 19:47 # −4
guest 08.03.2014 19:54 # −4
guest 11.03.2014 00:50 # −1
TarasB 08.03.2014 18:06 # −1
только надо понимать что нехуй пейсать на нём руками
3.14159265 08.03.2014 19:49 # +2
>> нехуй пейсать на нём руками
И что шланг:? Так, Тарас, шланг с виндой не очень дружит, бгг.
Задача кстати упрощается: запилить новый низкоуровневый язык на основе llvm, в котором не будет противоречивых фич и всё с радостью начнут портировать/писать код под него.
Мне llvm тоже нравится. Может найдется группа энтузиастов, которые с его помощью сломят крестобляству хребет.
TarasB 08.03.2014 20:23 # 0
а чё, функции "подключить функцию с таким-то именем и такой-то сигнатурой из такой-т библиотеки" в нём нету?