LINUX.ORG.RU

Common LISP vs Scheme Lisp


0

0

Не могу понять, какой из диалектов языка ЛИСП, перспективнее? На каком языке можно написать серьезный проект, есть ли примеры?


На том и другом можно. Хотя на common lisp оных гораздо больше, поскольку он предоставляет больше всякого полезного. А ским маленький, удобно как встраиваемый язык, в таком качестве его и используют часто.

stassats ★★★★
()

> Не могу понять, какой из диалектов языка ЛИСП, перспективнее? На каком языке можно написать серьезный проект, есть ли примеры?

серьёзный проект написать можно и на том, и на другом. проект: maxima

схема больше язык для обучения, тк он очень минималистичен. посему реализация на нём тех или иных вещей, которые уже есть в лиспе суть неплохой способ обучения.

asgard
()

схема красивее, ортогональнее, на ней приятней программировать.

В CL больше всякой гадости, библиотек, и прочего. Ещё там макросы круче. Для реальной задачи CL подходит лучше, но при желании можно и схему юзать.

Ещё схема по идее эффективнее компилируется.

anonymous
()
Ответ на: комментарий от anonymous

> Ещё там макросы круче.

Кто круче? defmacro круче гигиенических R5RS define-syntax? :)

А еще в схеме есть такая мощная штука, как call-with-current-continuation ;)

swizard
()

Я бы не сказал, что "схема" - маленькая. Стандарт - да, весьма скромен по сравнению с. А вот реализации... Тот-же bigloo не так уж и мал, да и glue со своими библиотеками далеко не скромен...

yyk ★★★★★
()

Благодарю, Друзья! =)

jony5
() автор топика
Ответ на: комментарий от anonymous

верно, в r5rs только "гигиеничные" макросы. но в большинстве невстраиваемых реализаций(bigloo,plt,chicken) есть поддержка макросов в стиле лиспа

bik ★★
()
Ответ на: комментарий от anonymous

> Syntax definitions are valid only at the top level of a <program>.

А вы только по одной строчке из информации по ссылке умеете читать, да? :)

Hint: let-syntax

swizard
()
Ответ на: комментарий от swizard

Разве гигиеничными макросами можно работать с кодом как с данными? Я так понимаю, это обычный Search&Replace.

Legioner ★★★★★
()
Ответ на: комментарий от Legioner

> Разве гигиеничными макросами можно работать с кодом как с данными? Я так понимаю, это обычный Search&Replace.

Конструкциями syntax-case / syntax-object->datum / datum->syntax-object можно.

Хотя глобально я действительно, походу, прогнал, за что извиняюсь -- syntax-case не входит в стандарт R5RS схемы, а появится только в R6RS :( В стандарте пока порезаный syntax-rules. Так что анонимус был прав :)

swizard
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.