Парсер лиспового синтаксиса можно написать за пять минут и это здорово, но самое негодное это количество скобок, особенно они сносят крышу, когда их много на конце строки. Без поллитра не разберёшь.
Не знаю, было ли такое решение, но я как-то придумал такой вариант: верхние уровни не оформляются скобками, но группируются через точку с запятой, то есть A; B равносильно (A) (B), плюс группируем скобки по-сишному:
int sum (int a; int b) (
return (+ a b);
)
Парам-пам-пам.
Лисп уже не модно. Теперь модно Оберон!
Зачем нужен Оберон, если есть Delphi/FPC?
Цитата: Алексей Гринь от марта 4, 2012, 19:33
int sum (int a; int b) (
return (+ a b);
)
Эту же программу можно записать как
(int sum ((int a)(int b)) (
(return (+ a b))
))
или между «;» и «()» нет взаимозаменяемости?
Цитата: Python от марта 5, 2012, 23:33
Эту же программу можно записать как
Да. Технически код это такое же одно большое дерево S-выражений; точка с запятой это просто визуально удобный вариант.
Цитата: Alone Coder от марта 4, 2012, 19:35
Лисп уже не модно. Теперь модно Оберон!
Теперь — это
когда?