I agree with Tom (and with Stuart). I tend to like using ->> when it's convenient, since all you're really doing is performing a list of transformations on a single object. However, the let is better documentation if that's ever going to matter. Not because it makes it easier to understand what operations are being performed - ->> is just as good at that - but because you assign names to the intermediate results. Then someone reading your code can see what the purpose of each transformation is, without having to look at the definition of other functions.
On Oct 19, 11:41 pm, Tom Faulhaber <tomfaulha...@gmail.com> wrote: > Dave, > > Yes, this is perfectly idiomatic and many people in Clojure (and also > Haskell, for example) use let to help document how they're building up > their computation. > > Stuart's suggestion is also good and it's largely a matter of personal > preference which to use when. > > Of course, as you use clojure more, you'll probably become more > comfortable with more complex statements and not use the let style > quite so much. > > Tom > > On Oct 19, 8: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