Hi, here a "short-circuiting" (in sense of realising only needed values from the passed seq) version of a "function and".
(defn fand [s] (let [s (seq s) l nil] (if s (when-let [f (first s)] (recur (next s) f)) l))) clojureql.sql=> (fand (map = [:a :b :c] [:a :b])) true clojureql.sql=> (fand (map = [:a :b :c] [:c :a :b])) nil clojureql.sql=> (fand (map = [:a :b :c] [:a :c :b])) nil clojureql.sql=> (fand (map = [:a :b :c] [:a :b :c])) true Sincerly Meikel -- 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