# Clojure Programming/Further Reading

This is a guide to additional reading material for learning and understanding Clojure.

## Clojure Specific
### Books

* Emerick, Chas; Carper, Brian; Grand, Christophe (2012). Clojure Programming. O'Reilly Media. ISBN 978-1-44939-470-7. {{cite book}}: Unknown parameter |month= ignored (help)
* Halloway, Stuart; Bedra, Aaron (2012). Programming Clojure. Pragmatic Bookshelf. The Pragmatic Programmers, LLC. ISBN 978-1-9343-5686-9. {{cite book}}: Unknown parameter |month= ignored (help)
* VanderHart, Luke; Sierra, Stuart (2010). Practical Clojure. Apress Media LLC. ISBN 978-1-4302-7231-1. {{cite book}}: Unknown parameter |month= ignored (help)
* Fogus, Michael; Houser, Chris. The Joy of Clojure. Manning Publications Co. ISBN 9781935182641.
* Rathore, Amit. Clojure in Action. Manning Publications Co. ISBN 9781935182597.

### Miscellaneous

(Reference) Clojure Home Page
(Wiki) All By Example Learning Clojure Concepts Tutorials and Tips
(Blog) Clojure - Functional Programming for the JVM Clojure for non-lisp programmers Clojure Series Clojure Scripting Mark Volkmann's Clojure Page
(Screencast) Value, identity, state Clojure for Java Programmers Intro to Clojure - 80 min screencast for non-Lispers Functional Programming with Clojure
(Slides) Clojure - Functional Programming for the JVM

## Lisp and Scheme
### Books

* Graham, Paul (1995). ANSI Common Lisp. Prentice Hall. ISBN 0133708756.
* Graham, Paul (1993). On Lisp. Prentice Hall. ISBN 0130305529.
** Examples converted to Clojure
** More examples converted to Clojure
* Kiczales, Gregor; Rivierès, Jim des; Bobrow, Danial G. (1991). The Art of the Metaobject Protocol. Cambridge, Massachusetts: The MIT Press. ISBN 978-0-262-61074-2. See also: Wikipedia, The Art of the Metaobject Protocol, http://en.wikipedia/wiki/The_Art_of_the_Metaobject_Protocol (describing aforementioned) (as of Jul. 23, 2010, 03:10 GMT).
* Seibel, Peter (2005). Practical Common Lisp. Apress. ISBN 978-1-59059-239-7. {{cite book}}: Unknown parameter |month= ignored (help)
** Converted to Clojure
* How to Design Programs
* Structure and Interpretation of Computer Programs (includes video lectures)
* Norvig, Peter (1992). Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp. Morgan Kaufmann. ISBN 1-55860-191-0.

### Miscellaneous

(Paper) The Evolution of Lisp

## Java
### Books

* Eckel, Bruce (2006). Thinking in Java (4th ed.). Prentice Hall. ISBN 978-0131872486. {{cite book}}: Unknown parameter |month= ignored (help)
* Goetz, Brian; Peierls, Tim; Bloch, Joshua; Bowbeer, Joseph; Holmes, David; Lea, Doug (2006). Java Concurrency in Practice. Addison-Wesley Professional. ISBN 978-0321349606. {{cite book}}: Unknown parameter |month= ignored (help)
* Horstmann, Cay S.; Cornell, Gary (2007). Core Java: Volume 1 - Fundamentals (8th ed.). Prentice Hall. ISBN 978-0132354769. {{cite book}}: Unknown parameter |month= ignored (help)
* Horstmann, Cay S.; Cornell, Gary (2008). Core Java: Volume 2 - Advanced Features (8th ed.). Prentice Hall. ISBN 978-0132354790. {{cite book}}: Unknown parameter |month= ignored (help)
* Effective Java

### Miscellaneous

* (Reference) Java API
* (Tutorial) Java Tutorials

## Functional Programming

* Okasaki, Chris (1999). Purely Functional Data Structures. Columbia University, New York: Cambridge University Press. ISBN 9780521663502. {{cite book}}: Unknown parameter |month= ignored (help)
* O'Sullivan, Bryan; Goerzen, John; Stewart, Donald Bruce (2008). Real World Haskell. O'Reilly Media. ISBN 978-0-596-51498-3. {{cite book}}: Unknown parameter |month= ignored (help)
* "Out of the Tar Pit"

## Additional Programming Books

(List) Free Programming Books