The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

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

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

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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