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

Reply via email to