Monday, 10 September 2012

Learning Clojure: Part 12

Two weeks ago today my wonderful wife gave birth to a lovely boy called George.

I couldn't be more proud if I tried.

While this has given me a great excuse to take some time off work, and get back into 'Programming Clojure', it has also used up a great deal of time. And energy. And sleep.

I have managed to read the section on concurrency, and I am looking eagerly ahead to learning about macros. However, I'm going to force myself back to the REPL to play with the example from the chapter before ploughing on with the book. It ought to be fun as its a snake game.

Aside: I've always thought it a little funny that having started programming aged 10 in order to write games, I've ended up preferring the programming to the games themselves.

While the chapter on concurrency was good (I particularly liked the way the information was presented), I was slightly taken aback to discover the power of 'def' and 'defn'. That these are in fact a part of a system for thread-local dynamic re-binding is interesting. Five years ago I would have thought it cool. Now I mostly think its scary. At least this way its a core part of the language and the bindings will be in the source code, rather than being woven in by AOP. Disclosure: I have come to dislike AOP.