Books that influenced Clojure

  • I'm shocked that Java Concurrency in Practice isn't in the list:

    http://www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/...

    I only know about that book because of Rich's mentions of it.

    To be honest, I"m also a little surprised that the Pickaxe book is in the list. Not that Ruby isn't the bees knees; it just didn't strike me as being influential on Clojure.

  • On #clojure, Rich once mentioned that Jim Gray's "Transaction Processing.." influenced his design of clojure's STM. IIRC, he mentioned that the MVCC aspect of the STM and the commute operation were some of the ideas that he took from the book.

    Another paper that gets repeatedly mentioned as being influential in Clojure's design is http://web.mac.com/ben_moseley/frp/paper-v1_01.pdf

    Once you finish the above paper, you should also look at http://code.google.com/p/clojure-contrib/wiki/DatalogOvervie... for seeing one way of doing FRP in clojure.

  • Since Clojure lacks tail-call optimization, I'm not sure how the book "Programming Clojure" influenced it...

  • You can read the thesis that later became "Purely Functional Data Structures" for free online: http://www.cs.cmu.edu/~rwh/theses/okasaki.pdf

    It's a great read even for those who don't yet have experience with functional programming.