Say mam kolekcję map:W Clojure, w jaki sposób mogę utworzyć funkcję "dodaj identyfikator do mapy"?
(def coll #{{:name "foo"} {:name "bar"}})
chcę funkcję, która doda identyfikator (unikatowy numer jest w porządku) do każdego elementu mapy w kolekcji. tj.
#{{:id 1 :name "foo"} {:id 2 :name "bar"}}
Następujące NIE DZIAŁA, ale to linia myślenia, którą obecnie mam.
(defn add-unique-id [coll]
(map assoc :id (iterate inc 0) coll))
góry dzięki ...
Ah! Twoja druga funkcja jest dokładnie tym, co próbowałem zrobić z lenistwem. Dziękuję Ci! – scrotty
Może i po prostu użyć (zakres), ponieważ jest to odpowiednik iteracji – amalloy