The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск языка программирования Clojure 1.10"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Отдельный RSS теперь доступен для каждого обсуждения в форуме и каждого минипортала.
. "Выпуск языка программирования Clojure 1.10" +3 +/
Сообщение от Аноним (41), 19-Дек-18, 17:23 
Несколько лет программировал на Clojure (начинал, кажется, с версии 1.1), но теперь больше смотрю в сторону Racket и Guile.  После Java освоение Clojure было значительным шагом в программистском развитии, но теперь, когда появился опыт работы с другими лиспами, мне многое в нем не нравится.  В целом Clojure кажется каким-то неряшливым и нестрогим, более принадлежащим современной эмпирической культуре программирования (тыкать, пока не заработает), академическая выстроенность Схемы мне ближе.

Синтаксис Clojure на первый взгляд выглядит привлекательно, но на самом деле совершенно неразумный.  Квадратные скобки означают вектор, круглые — список, у векторов и списков разные характеристики производительности, но в синтаксисе они используются не поэтому, а просто потому что разные скобки и их можно различать, т. е. одно и то же одновременно используется для обозначения совершенно ортогональных вещей.  Кроме того, стремление авторов избавиться во многих конструкциях от "лишних" скобок делает Clojure неудобным для структурного редактирования (paredit), т. е. убивает один из главных кайфов от работы с Лиспом.  Ключевые слова в Clojure лишены смысла: они используются в качестве идентификаторов и ключей в словарях и структурах, но не имеют никакого специального синтаксического значения, т. е. могли бы быть полностью убраны из языка и заменены символами.  Вместо этого имело бы смысл использовать киворды для передачи именованных аргументов, но в существующей ситуации, когда киворды используются для других вещей, возникнет проблема различия киворда, указывающего аргумент, от киворда, который нужно передать как значение аргумента.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск языка программирования Clojure 1.10, opennews, 18-Дек-18, 11:11  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру