В этой записи в блоге, "CSP and transducers in JavaScript", автор заявляет:Являются ли датчики Clojure нетерпеливыми?
Во-первых, мы должны понимать, что многие массива (или другой коллекции) операции, такие как
map
,filter
иreverse
могут быть определены в терминахreduce
.
then we see Так ряд реализаций этого в Clojure не лень, они хотят:
user> (defn eager-map [f coll]
(reduce (fn [acc v] (conj acc (f v)))
[]
coll))
#'user/eager-map
user> (eager-map inc (range 10))
[1 2 3 4 5 6 7 8 9 10]
Мой вопрос, являются Clojure преобразователи готовы?