Another one that works with all collections. Short, but not necessarily the most efficient:
(use '[clojure.contrib.seq-utils :only [positions]]) (defn nil-coalesce [coll subs] (map-indexed (zipmap (positions nil? coll) subs) coll)) Justin On Aug 17, 4:10 pm, Justin Kramer <jkkra...@gmail.com> wrote: > With the precondition that the first collection is a vector: > > (use '[clojure.contrib.seq-utils :only [positions]]) > > (defn nil-coalesce [v subs] > (apply assoc v (interleave (positions nil? v) subs))) > > Justin -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en