- PVSM.RU - https://www.pvsm.ru -

Релиз Clojure 1.4

После нескольких месяцев разработки вышла новая версия языка Clojure — 1.4. Clojure — Lisp'образный язык общего назначения, работающий на платформах JVM и .Net, известный специальными средствами для упрощения разработки concurrency кода.

Среди изменений стоит отметить:

  • Появились mapv, filterv (который возращает векторы), reduce-kv (обрабатывает вектор как коллекцию индексированных пар)
  • require может использовать ключевое слово :refer. :refer может принимать набор символов из области видимости(namespace, ns) или :all для подтягивания всех публичных переменных, так что теперь нет необходимости перед этим описывать все ns
  • *compiler-options* можно отключить очистку локальных переменных (locals), тем самым улучшить опыт отладки
  • = для char аргументов, убрано reflection предупреждние и улучшена производительность
  • исключения больше не обрабатываются через RuntimeException, следовательно проще отлавливать основное исключение.
  • улучшена производительность contains?
  • clojure.core/hash больше не работает на основе .hashCode

Полный список изменений доступен в репозитории [1].
Релиз не очень большой, но сделаны важные улучшения в производительности и плавно начинают обкатывать Java 7.

Параллельно с релизом обновились некоторые интересные библиотеки, которые входят в состав Clojure Libraries:

Напомню, что разработкой Clojure/core занимается небольшая команда разработчиков во главе с основателем языка Ричем Хики [5], а сообщество занимается разработкой дополнительных библиотек, которые постепенно могут входить в ядро или поставляться в пакете libraries.

P.S: Для тех кто еще не заметил, недавно, обновился Leiningen [6] 2.0 preview3, облочка для разворачивания Clojure проектов.

Автор: Zeldan


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/programmirovanie/5545

Ссылки в тексте:

[1] репозитории: https://github.com/clojure/clojure/blob/master/changes.md

[2] clj-time: https://github.com/seancorfield/clj-time

[3] известной joda-time библиотекой: http://joda-time.sourceforge.net/

[4] congomongo: https://github.com/aboekhoff/congomongo

[5] Ричем Хики: https://twitter.com/#!/richhickey

[6] Leiningen: https://github.com/technomancy/leiningen