A slight modification, which I think avoids counting each collection twice:
(defn append-val [val & colls] (let [lengths (map count colls) maxlen (apply max lengths)] (map #(concat %1 (repeat (- maxlen %2) val)) colls lengths) ) ) On Dec 23, 10:30 am, kyle smith <the1physic...@gmail.com> wrote: > It's a little shorter if you unconditionally concat & repeat. > > (defn append-val [val & colls] > (let [maxlen (apply max (map count colls))] > (map #(concat % (repeat (- maxlen (count %)) val)) colls))) > > user> (apply map + (append-val 0 [1] [2 3] [4 5 6])) > (7 8 6) -- 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