Clojure можно использовать в проектах любого рода, при этом важной его особенностью является сочетание удобства скриптового языка с эффективностью многопоточного программирования. Как любой динамический язык, Clojure компилируется в байт-код для JVM непосредственно на этапе выполнения. В то же время Clojure является диалектом языка Lisp, предоставляя разработчику все преимущества функционального программирования.
Изменения в новой версии:
монолитная система дополнений clojure-contrib.jar заменена на полностью модульную структуру, что позволяет, во-первых, не включать в готовые приложения код неиспользуемых библиотек, а во-вторых, иметь собственный цикл разработки для каждой отдельной библиотеки. При этом для обновления приложений, написанных на Clojure 1.2, рекомендуется сначала обновить библиотеки, а затем уже обновиться до Clojure 1.3;
улучшена поддержка примитивов для арифметических расчетов;
внесены изменения в определении записей (defrecord) и типов (deftype);
улучшена система оповещения об исключениях и ошибках;
добавлены несколько новых функций в clojure.core, clojure.data, clojure.pprint, clojure.repl;
clojure.java.shell/sh теперь поддерживает в качестве источника данных объекты типов InputStream, Reader, File, byte;
введена поддержка Maven для компиляции и развертывания приложений;
увеличена производительность скомпилированных приложений.