Dipping my toes for the first time in Clojure. Having some beginner troubles.
THIS code works (on the repl, if that matters... also, Clojure 1.2): (defn show [words] (let [word (first words)] (do (println word) (if (nil? word) (println "DONE") (recur (rest words)))))) (show '("some" "sample" "words")) ... this shows the 3 words, then DONE, and terminates. But originally, I was trying to use loop/recur. If I replace the "let" with "loop" in the above code, it goes into an infinite loop. I assume there's something different in the scoping/binding rules with loop, but I can't find a good explanation of what. I read in "Programming Clojure", regarding loop, that it "...works like let, establishing bindings and then evaluating exprs..." Noob Q#2: should I (and when) use "next" instead of "rest" on a seq? a lazy seq? Thanks! -- 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