I'm with Alex. I think of it as though it's a let binding, cause that's basically what's happening; the is bound to the scoped name.
On Jan 4, 11:29 am, Alex Miller <a...@puredanger.com> wrote: > I had the same thought when I first started learning Clojure - I think > the idea is that there is some nice mental resonance when > destructuring matches up to your mental model of the data structure > (it's literal form). In sequential destructuring, that holds but in > maps it doesn't so things look "backwards". I think the way I've come > to understand it is that when doing a let-style binding, the thing > being bound is always "on the left" so when destructuring a map, you > specify the variable, then the key which is looked up to provide the > value. > > On Jan 4, 12:36 am, Johnny Weng Luu <johnny.weng....@gmail.com> wrote: > > > > > > > > > One thing that seems weird is the way Clojure destructures a map > > > I have this map: {:last-name "Vinge" :first-name "Vernor"} which is passed > > to this function: (defn greet-author-2 [{fname :first-name}] ... ) > > > Wouldn't it be better doing: (defn greet-author-2 [{:first-name fname}] ... > > ) > > > You first type the keyword, then followed by the parameter to bind to. It > > reads that the value is bound to the parameter in the same place. > > > Feels more natural to me in a way. > > > Thoughts? -- 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