I misread the critical piece of your post :) You are, indeed, a step ahead of me
On Tuesday, January 14, 2014 11:30:13 AM UTC-8, g vim wrote: > > It's been the other way round for me. I always felt Ruby was doing too > much under the hood. So much so that I bought "Ruby Under A Microscope" > just to find out what was going on. I found it very easy to switch to > Clojure because everything is so much more transparent. Now Ruby just > feels awkward though I still need to use it due to its mindshare in the > web development domain. > > gvim > > > On 14/01/2014 19:18, Mark wrote: > > I have felt your pain. I started life with Smalltalk and more or less > > spent the last 15 years in Java. When I started Clojure, it was very > > hard to break my thinking habits. Particularly, I was lost without > > manifest typing. I didn't realize how much types documented my system > > and allowed very lazy thinking on my part. I had less trouble with > > immutability as I had developed the habit of coding immutable objects in > > Java. > > > > I started dabbling in Clojure about a year ago and started coding a > > serious project about 3 months ago. Only recently have I gotten used to > > thinking about mapping functions over data as opposed to looping through > > a collection although I still find myself coding loop/recur and then > > realizing I could use map. I've also developed very different work > > habits due to the REPL. > > > > In my own case, the particular changes in my thinking that have really > > aided me are: > > > > 1. Being able to visualize the data structure that a function is > > operating on > > 2. I find that my code falls into two categories: computing new data > > or transforming data structures > > 3. Never try to compute new data and transform data at the same time > > 4. Much of the time computing new data is either map or reduce. > > Understanding these two (especially the flexibility of reduce) is > huge > > 5. 80% of the time that I want to transform data, postwalk is the > answer > > > > I'm sure that as I get to know the Clojure libraries better, the > > specifics around #4 and #5 will change but I bet the first three are > > pretty constant. > > > -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to [email protected] Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to [email protected] 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 [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
