Andy C, I think that in the Clojure world, there is a widespread view that 
lazy sequences should be the (or one of the) primary datatypes, that 
iteration should usually produce lazy sequences, etc.  They are something 
like the default in Clojure.  Clojure includes a systematically organized 
and very handy collection of functions all of which are designed to produce 
and/or use lazy sequences.  That collection of tools is one of Clojure's 
strengths.  From this point of view, it's very natural that map should 
return a lazy sequence, no matter what kind of collection(s) is (are) 
passed into it.  And then if one doesn't want a lazy sequence as output, 
there are various ways to realize the output or convert it.   The into 
function is a general-purpose tool that can often be used for this purpose.

(That said, I currently hold the heretical view that laziness should be 
optional in Clojure--that maybe there should be a parallel set of non-lazy 
tools, or even, possibly, that there should be a switch to turn laziness on 
or off before compilation.  I suspect that most Clojure programmers would 
disagree with me, and I am a relative newbie in any event.  (If anyone 
wants to discuss this point now, we should probably start another thread.))


-- 
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/groups/opt_out.

Reply via email to