LINUX.ORG.RU

Racket VS Common Lisp

 , , , ,


8

10

Добрый день дорогие аналитики L0R'a. Ковыряю ракет, пишу на нем клиентскую программу - а пока хочется вот что спросить. Все же что лучше - Racket или Common Lisp? Что более перспективно? Ну и естественно, какие у одного недостатки/преимущества по сравнению с другим?

Ответ на: комментарий от Debasher

Clojure

NO. Рич Хикки - мерзкий говнюк. Само его существование является оскорблением наследия Лиспа, гения МакКарти и всех тех трудов, которые Лисперы вкладывали в дело за последние годы. Тот факт, что Clojure работает на JVM - это мелочь по сравнению с прочими смертными грехами, каковых настолько много (и которые так меня бесят), что я здесь даже половины не перечислю.

Ну что, начнем со сваливания в кучу функций и значений? В нормальном Лиспе головные формы распознаются моментально, потому что они, блядь, идут в начале списка. Когда с этим облажались в Scheme, было уже довольно хреново; еще хуже стало, когда на те же грабли наступил Пол «Поглядите-я-даже-не-знаю-что-такое-интерактивная-разработка» Грэм. И что, никто ничему не научился на их ошибках? Ах, ну да, в Scheme попытались это вылечить так называемыми «гигиеническими макросами», которые были хотя бы юзабельны, несмотря на убогость. В Clojure даже того нет - это просто смешно.

Но это еще не самое плохое. В Clojure слишком много синтаксиса! Похоже, что Хикки в качестве модели выбирал Haskell. Я не припомню другого языка, в котором было бы столько синтаксиса. В виде Кложуры мы получили самый синтаксически тяжеловесный лисп-подобный язык на сегодняшний день. («Лисп-подобный» - потому что, за исключением самых поверхностных моментов, на самом деле в Кложуре нет ничего от Лиспа.) Самые обычные вещи, которые тривиально реализуются в терминах головных форм, в Clojure превращаются в мешанину из скобок и разделителей, даже в элементарнейших случаях. [foo] вместо (list foo), {:foo bar} вместо (dict :foo bar)...

Лямбда. Это слово пишется как «lambda», а не «fn». Не так уж и сложно набрать, правда, мистер Хикки? Что, руку вывихнул, пока дрочил на собственное дутое ЧСВ? Надеюсь, руки у тебя отсохнут и отвалятся, а сам ты сдохнешь. Потому что ты угробил Лисп для огромного количества людей. Ты даже не можешь напечатать «lambda»? Серьезно? Не верю.

И да, к слову об ABCL. Он уже есть и прекрасно работает на JVM. Нет никаких причин плодить еще один диалект.

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

Фу на тебя. Специальный синтаксис для часто используемых типов коллекций типа [foo] и {:foo} делает жизнь гораздо проще и удобнее. Да, в Clojure больше синтаксиса, чем в лиспе. Но зато он и более практичен.

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

Но зато он и более практичен.

для крудошлепства?

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

Специальный синтаксис для часто используемых типов коллекций типа [foo] и {:foo} делает жизнь гораздо проще и удобнее

Если не использовать кодогенерацию или, например разные реализации хэшей/списков/массивов.

Для того чтобы делать жизнь проще есть read-macro, а хардкодить скобочки - это моветон.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

Если не использовать кодогенерацию или, например разные реализации хэшей/списков/массивов.

Никто не мешает использовать hash-map и vec вместе с круглыми скобочками.

Кажется народ придумал проблему на пустом месте и теперь водит вокруг неё хоровод.

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

А, ну да. Обойти (в лоб) нельзя биндинги в defn, fn, let и т.д. Тут согласен, но для меня это никакой проблемы не составляет.

Norgat ★★★★★
()
Последнее исправление: Norgat (всего исправлений: 1)
Ответ на: комментарий от anonymous

Кидание качественными пастами и их переделывание — способ общения интеллектуального продвинутого меньшинства. Единственное актуальное, что есть в общении. Практикуется на 90% в музаче. В /b/ не могут катастрофически ни во что новое, и до сих пор дрочат на 2008-й год - редкие заплесневелые пасты того двача типа ЕОТ и крипота, и объедки со стола музача - типа постинга колобков с красным задом в качестве аргументации. Паста про Вована - статья на лурке - вершина развития способов общения в /b/.

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

Я не понимаю жаргона нынешней школоты. Переведи свой бред на литературный русский, тогда, может, и поговорим.

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

мерзкий говнюк Рич Хикки.

Что вы все хотите от человека с такой фамилией?

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

Все современные языки имеют специальный синтакс для векторов и хэшей, потому что это наиболее часто используемые структуры данных. Поэтому получается, что нативная поддержка векторов и хэшей просто обязательна для Clojure как современного языка. А разные реализации не нужны (точнее, непрактичны), особенно в Clojure, где все коллекции persistent.

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

Все современные языки имеют специальный синтакс для векторов и хэшей

Все это какие? C++ не имеет, Java не имеет, или ты про скриптоту?

no-such-file ★★★★★
()

Наркоманы выкопали протухший тред. Хватит откапывать стюардессу!

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