(defn seq-to-multimap "takes a sequence s of possibly repeating elements and converts it to a map, where keys are obtained by applying key- fn to elements of s and values are sequence of all elements of s with the particular key" [s key-fn] (apply merge-with concat (map (fn [x] {(key-fn x) [x]}) s)))
Here's a more concise, but probably significantly slower version .... -Jason --~--~---------~--~----~------------~-------~--~----~ 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 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 -~----------~----~----~----~------~----~------~--~---