In questo blog, "CSP and transducers in JavaScript", l'autore afferma:I trasduttori Clojure sono desiderosi?
In primo luogo, dobbiamo renderci conto che molti array (o da un'altra raccolta) operazioni come
map
,filter
ereverse
possono essere definiti in termini di unreduce
.
Così then we see un certo numero di implementazioni di questo in Clojure non sono pigri, sono desiderosi:
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]
La mia domanda è, sono trasduttori Clojure ansiosi?