Quite a few in the Philadelphia area expressed interest in having a study 
group around the excellent book Structure and Interpretation of Computer 
Programs, and so here it is!

http://www.meetup.com/Clojadelphia/events/155920672/

But, SICP is in Scheme, right? What does that have to do with Clojure? In 
about five seconds, I found two great posts explaining the benefits of SICP 
for the Clojure programmer: Why 
Clojure<http://thecleancoder.blogspot.com/2010/08/why-clojure.html>by Bob 
Martin, and Advice 
to a Newbie <http://www.learningclojure.com/2011/02/advice-to-newbie.html>on 
learningclojure.com.

For a bit of marketing from me on why you should care about an old musty 
Scheme book: the book itself is is massive in scope, so it would be hard to 
list all the things it covers (hence the need for a study group). For 
example, there is a section in chapter 2 that has you write all the core 
functional abstractions: map, filter, reduce, etc entirely from just 
functions and lambdas. I thought I understood those abstractions, but it 
wasn't until I made them from scratch that they really clicked. 
Additionally, a later section shows how different data structures can be 
made to work with those abstractions, which is fundamental to how ISeq in 
Clojure works.

The book eventually goes on to have to write your own interpreter, and if 
the table of contents is accurate, your own compiler (I have only finished 
Chap 2 so far). It shows you how to add OO-like benefits to Scheme: 
polymorphism, data "type" checking, etc. with just built in language 
constructs.

SICP is not for the faint of heart, but it will turn you into a much better 
developer.

If you are up for the challenge, I would like to try to get through the 
whole book in one year, as suggested by the author of learningclojure.com. 
There are 356 exercises, and each one is there to teach you something 
valuable that you will need to complete the next section.

If you are interested, please come sign up and RSVP.

-- 
-- 
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
--- 
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 clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to