Форум о Clojure
Добавлен новый форум, посвященный программированию на языке Clojure.
[#]
Ну всё, теперь точно никого не забыли :)
Как-то не доводилось сталкиваться с Clojure, он очень не похож на CL, или не очень?-)
Как-то не доводилось сталкиваться с Clojure, он очень не похож на CL, или не очень?-)
[#]
Ну вот, там всё совсем по другому - ещё одна сущность, JWM, Lisp-1, есчё виды скобок... Вот создатель Qi говорил, что мыслит перенести Qi с CL на Clojure - мол CL тащит за собой груз прошлых предрассудков, а Clojure более последователен. Зато SBCL концептуальней - всё сам без всякой Javы ;D
[#]
Код один в один не портабелен, но есть много удобных вещей... Подробней про язык будет в следующем номере журнала ПФП
[#]
Это я в словах запутался уже - closure, Clojure, есть ведь ещё cl-Clozure.
Наверно этот язык имеет смысл использовать как мощную надстройку над самой Java с доступом ко всем её средствам.
>> но есть много удобных вещей...
Эт точно, вроде скобок для массивов и таблиц, или def с расписыванием типов и вариантов списков аргументов.
<===>
Language as platform vs. language + platform
Я испугался )))
Наверно этот язык имеет смысл использовать как мощную надстройку над самой Java с доступом ко всем её средствам.
>> но есть много удобных вещей...
Эт точно, вроде скобок для массивов и таблиц, или def с расписыванием типов и вариантов списков аргументов.
<===>
Language as platform vs. language + platform
- Old way - each language defines its own runtime
- GC, bytecode, type system, libraries etc
- New way (JVM, .Net)
- Common runtime independent of language
- Many new languages still take 'Language as platform' approach
- When ported, have platform-on-platform issues
- Memory management, type-system, threading issues
- Library duplication
- If original language based on C, some extension libraries written in C don't come over
Я испугался )))
[#]
скобки - это не основное... основные приятности - параллелизм, в том числе неявный, STM, легкость написания многотредовых приложений. Легкость интеграции с жабой (в обе стороны), что дает доступ к большому кол-ву библиотек, ну и т.д.
[#]
А как вы относитесь к противопоставлению (Language as platform) vs.
(language + platform), то есть реализация сама себя "обслуживающая"
(классический cl-runtime?) и реализация операющаяся на внешнюю vm вроде
JVM, или это вещи самодостаточные?
[#]
Language as platform - вещь хорошая, но не надо впадать в крайности. Сейчас CL как платформа не имеет большой экосистемы, что ограничивает его применение...