I’m yet another person sucked into this by Paul Graham’s essays.
I’m a victim of the OOP obsession that has dominated for the past while. LISPer types smugly assert that functional programming transcends OOP and that Design Patterns are just formalized work-arounds for dealing with the shortcomings of lowest-common-denominator programming languages that were designed for the masses. Having lived primarily within the .Net paradigm, I lack the mental tools to even conceive of such thoughts, much less argue with them.
I bought Graham’s ANSI Common Lisp, but I use Peter Seibel’s Book and Steel’s CLtL a lot as well. So far I’ve dutifully worked through 18 chapters of Common Lisp: An Interactive Approach. (I like the fact that Shapiro attempts to break your imperative habits by keeping you locked in to “pure” lisp for as long as possible.) I use the Lisp-in-a-Box platform suggested on Seibel’s web page.
I hope to make occasional posts here on my progress– especially on things that cost me a lot of unecessary pain. Hopefully such tidbits will prove useful to those that come along after me.
June 7, 2007 at 6:10 pm |
I am also learning Lisp. A very helpful book that I found for learning to think applicatively is “Common Lisp: A Gentle Introduction to Symbolic Computing” (available online at http://www.cs.cmu.edu/~dst/LispBook/index.html). It’s a bit dated, but it’s an excellent tutorial in the basics of thinking idiomatically lispy thoughts