Here's a version that uses destructuring (but is otherwise the same) that
cleans it up a bit:
(defn combinations [[x & xs]]
(if xs
(for [frstitems x tlitm (combinations xs)]
(flatten (list frstitems tlitm)))
x))
On Feb 26, 2012, at 9:45 PM, Mike Ledoux wrote:
> (defn combinations [items]
> (if (== (count items) 1)
> (flatten items)
> (for [frstitems (flatten (first items))
> tlitm (combinations (rest items))]
> (flatten (list frstitems tlitm)))))
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en