small correction: sometimes one does need to nest a for or doseq call, but not for the usual nested iteration case
On Monday, April 21, 2014 8:57:49 AM UTC-7, Justin Smith wrote: > > That doseq is a no-op, because str has no side effects and doseq always > returns nil. Also there is no need to nest doseq calls. for is much like > doseq except it actually returns the result. > > user> (for [lang (:langs langs) > k (keys lang)] > (str k " " (k lang))) > (":lang Clojure" ":version 1.6" ":lang Erlang" ":version 17") > > > On Monday, April 21, 2014 8:32:51 AM UTC-7, Hussein B. wrote: >> >> Hi, >> >> For a data structure such as: >> >> (def langs {:langs [ {:lang "Clojure" :version 1.6} >> {:lang "Erlang" :version 17} ] } ) >> >> How to iterate all the items of the maps? >> >> I tried this but it is too imperative to me: >> >> (doseq [lang (:langs langs) >> (doseq [k (keys lang)] >> (str k " " (k lang)))) >> >> Thanks for help and time. >> > -- 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 --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.