Применение образца Clojure среднего размера?


есть ли пример приложения Clojure среднего размера, который можно использовать в качестве примера "лучших практик", и хороший способ увидеть, как такое приложение будет выглядеть с точки зрения кода и организации кода? Веб-приложение было бы особенно интересно для меня, но самое главное, что программа делает что-то обычно полезное (блог, отслеживание ошибок, CMS, например), а не что-то математическое, что мне никогда не приходилось реализовывать в реальном мире (решение N-queens задача, имитирующая жизнь, порождает последовательности Фибоначчи, и такая обычная плата за проезд функциональных языков программирования).

спасибо!

14 93

14 ответов:

рекомендую корова-блог Брайан Карпер. По словам автора было написано с целью.

Если вы просмотрите clojure-contrib исходный код вы можете увидеть, как библиотеки реализованы в Clojure.

вы также можете оформить "ClojureScript " под тем же исходным деревом.

позволяет код, написанный в очень маленький подмножество Clojure, которое будет автоматически переведено на JavaScript.

в Кложурскриптом переводчик является полноправным приложение на Clojure.

Я бы тоже рекомендовал проверяя Стюарта Хэлоуэя порт практических образцов Common Lisp для Clojure Если вы еще не.

посмотри Compojure. Это веб-фреймворк, написанный в Clojure, поэтому он позволяет писать и запускать (на встроенном причале) полезные веб-приложения в Clojure, а также служит хорошим примером значительного куска реального кода Clojure.

Он находится в активной разработке и имеет полезный Группа Google.

Проверьте демо Муравьев, который написан автором Clojure, Rich Hickey:

http://clojure.googlegroups.com/web/ants.clj

вот несколько хороших инструкций для его настройки вместе с средой разработки emacs:

http://riddell.us/clojure

также проверьте презентацию Рича, которая идет вместе с этим кодом:

http://blip.tv/file/812787

Clojure сам по себе является хорошим примером лучших практик Clojure. Читайте в нижней части ядра.клдж, хороший материал.

http://4clojure.com

4Clojure-это open source веб-сайт, где вы можете решить интерактивные проблемы заполнения пустого Clojure.

Я думаю, что Compojure, вероятно, лучший способ пойти на пример. Я сомневаюсь, что это пример" среднего размера", но, вероятно, есть его небольшие подразделы, которые будут работать. По крайней мере, это будет мой подход. улыбается

кроме того, проверьте

http://github.com/technomancy/mire/tree/master

который представляет собой небольшой прототип клиента m.u.d. построенный в clojure, преимущество в том, что он полностью самодостаточный и, вероятно, довольно простой, включая соответствующие концепции. Документация, да, это просто хорошо, но понятия в коде очень тесно связаны с элементами действия M. U. D., которые легко запускаются.

мы уже два года от этого вопроса, и, хотя это все еще рано в цикле для языка, Clojure определенно используется для серьезной производственной работы. В World Singles у нас есть несколько тысяч линий Clojure в производстве, которые обрабатывают всевозможные задачи общего назначения на нашей веб-платформе - я написал об этом в своем блоге реальный мир Clojure серии.

для некоторых достаточно крупных проектов с открытым исходным кодом - не совсем приложения, но громкие инфраструктура-вы можете посмотреть на буря из Twitter и Cascalog от BackType (теперь часть Twitter). 4clojure.com был упомянут как веб-приложение с открытым исходным кодом, это тоже стоит посмотреть, но обратите внимание на новое РЕПО github для 4clojure.

положительный знак: есть статья на InfoQ об " одном из первых опубликованных отчетов о том, что Clojure используется в крупномасштабном производственном развертывании."Он не кажется открытым, но, по крайней мере, это признак того, что Clojure используется в критически важном приложении в реальном производственном мире. Большой шаг для сообщества Clojure.

http://code.google.com/p/lighttexteditor/

вы можете попробовать легкий текстовый редактор

вы можете посмотреть здесь: http://bitbucket.org/kumarshantanu/blogjure/overview/

Это крошечное приложение для блога, написанное с использованием Hibernate, Compojure и StringTemplate, которое действительно работает!

Я могу только рекомендовать вам проверить тумба, очень перспективный веб-фреймворк, как на стороне сервера, так и на стороне клиента (где это облегчает ClojureScript). Материал gui немного трудно понять, но довольно много, как это должно быть сделано, чтобы оставаться в здравом уме в большом приложении.

edge представляет собой приложение среднего размера, демонстрирующее структурирование приложения с помощью Clojure, ClojureScript, Component, Yada, Aero и Boot.

Clojure все еще слишком молод и движущаяся цель, чтобы иметь приложения среднего размера с доступным исходным кодом еще.