This question leads into something that I read in Joy of Clojure (page 161 in the latest MEAP edition): "If you manage to hold onto the head of a sequence somewhere within a function, then that sequence will be prevented from being garbage collected. The simplest way to retain the head of sequence is to bind it to a local. This condition can occur with any type of value bind be it to a reference type or through the usage of let or binding."
I am not sure what this means, but I think it would mean that using let as you do, could cause garbage collection problems. Thus, it might be better to follow the advice of Stuart and Luc. Chad PS. Clarification of the statement from the Joy of Clojure would be helpful. On Oct 19, 11:19 pm, Dave Ray <dave...@gmail.com> wrote: > Hey, > > I'm parsing a file with a chain of filter and map operations. To make > it a little more readable (to me), I put the steps in a let like this: > > (defn parse-dictionary > [reader] > (let [lines (read-lines reader) > trimmed (map #(.trim %1) lines) > filtered (filter is-dictionary-entry? trimmed)] > (map parse-entry filtered))) > > Is this style of let considered good/bad stylistically? Are there > technical tradeoffs between this and a bunch of nested forms? > > Thanks! > > Dave -- 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