Я задал этот вопрос на твиттере, а также канал # clojure IRC, но не получил ответов.
Было опубликовано несколько статей о программистах Clojure -for-Ruby, Clojure -for- lisp -programmers.. но какая недостающая часть Clojure для программистов ActiveRecord.
Были статьи о взаимодействии с MongoDB, Redis и т.д. - но это ключевые магазины значений в конце дня. Однако, исходя из фона Rails, мы привыкли думать о базах данных в терминах наследования - has_many, polymorphic, belongs_to и т.д.
Несколько статей о Clojure/Compojure + MySQL (ffclassic) - перейдите прямо в sql. Конечно, возможно, что ORM вызывает несоответствие импеданса, но факт остается фактом: после мышления, такого как ActiveRecord, очень трудно думать каким-либо другим способом.
Я считаю, что реляционные БД очень хорошо подходят к объектно-ориентированной парадигме, потому что они по сути являются наборами. Материал, подобный activerecord, очень хорошо подходит для моделирования этих данных. Напр. блог - просто введите
class Post < ActiveRecord::Base
has_many :comments
end
class Comment < ActiveRecord::Base
belongs_to :post
end
Как можно моделировать это в Clojure - который является настолько строго анти-OO? Возможно, вопрос был бы лучше, если бы он касался всех языков функционального программирования, но меня больше интересует точка зрения Clojure (и Clojure)