by Chas Emerick. Brian Carper. Christophe Grand
ISBN: 9781449310387
Buy from O’Reilly
Found in 6 comments on Hacker News
If you want to learn a little bit about lisp, you might try some of Paul Graham's writing on the subject. http://www.paulgraham.com/lisp.html One thing you'll learn there is that it's possible to define a lisp interpreter, in lisp, in about a page of code.

But if you want to really appreciate macros, you'll need to read some books. There's a lot to learn.

My introduction to lisp was ANSI Common Lisp and On Lisp by Graham. On Lisp is all about macros. You need ACL to understand On Lisp. What you learn is pretty impressive -- I seem to recall one of the later chapters of On Lisp features a compiler for Prolog in two and a half pages of code -- but it requires a certain amount of supporting material. Still, if you want the most direct route to understanding (some of) lisp's greatness, these two would be it.

Another possibility is Paradigms of Artificial Intelligence Programming by Norvig. This one teaches you Common Lisp in the introduction, but I'm not sure it's enough by itself for you to really understand some of the later chapters. If you're prepared though (read ANSI Common Lisp first), this book is a gem. It's less about AI than about transforming and optimizing programs. So, code as data.

You might also look at Practical Common Lisp by Siebel. I haven't read this, but a lot of people liked it, and the code is very real-world (a little dated now, though). It's available online here: http://www.gigamonkeys.com/book/

In general, you wind up learning a couple of different lisps. Common Lisp and Scheme have the best literature, but the lisp that's most in use today is Clojure. Clojure's macro system is a refinement of Common Lisp's. For learning clojure there are a lot of teach-yourself-X-in-21-days type books. The best of them is the O'Reilly book: https://www.oreilly.com/library/view/clojure-programming/978...

Scheme doesn't (always) have macros, but I'd be remiss if I didn't suggest something. The Schemer books are some of the most effective pedagogy I have seen on any subject: The Little Schemer, The Seasoned Schemer and The Reasoned Schemer. They are very cute, but don't let that fool you. They get hard (in TLS's case maybe too hard) at the end.

Finally, there is one of the most important CS books of all time: The Structure and Interpretation of Computer Programs (SICP). It will change the way you think about programming forever. It also explains some important details about how lisp works, and it's so definitive that a lot of them aren't covered elsewhere. ("SICP already did that...") I reread my copy every five years or so, and I always come away knowing something new.

You don't need to read all this stuff to be a good lisp programmer. One or two of these would probably be enough. But I think it's important to have choices. If you want to talk in more depth, my email's in my profile.

raju · 2015-02-14 · Original thread
It's from Clojure Programming by Chas Emerick, Brian Carper, Christophe Grand - http://shop.oreilly.com/product/0636920013754.do
john2x · 2013-09-16 · Original thread
The "Clojure Programming"[1] book is good. Also "The Joy of Clojure"[2], to ease you into the philosophy/mindset of Clojure.

There's also http://www.braveclojure.com which is still a work in progress but it's good for diving in.

[1]: http://shop.oreilly.com/product/0636920013754.do [2]: http://joyofclojure.com

fmw · 2012-11-08 · Original thread
I suggest buying the books. They are excellent. If you have to pick two, I would suggest the O'Reilly book[0] and the Joy of Clojure[1]. The first is an excellent primer and the latter is really great at explaining the thinking behind the language. I also enjoyed Amit Rahore's Clojure in Action, as well as Programming Clojure by Stuart Halloway. I haven't read Practical Clojure.

The books are the best resources if you're trying to learn the language at a fast pace, but there is plenty of information to be found through Google as well. In the end the best way to learn is by doing.

Good luck and welcome to the Clojure community!

0: http://shop.oreilly.com/product/0636920013754.do

1: http://joyofclojure.com/

oacgnol · 2012-05-04 · Original thread
Seriously, another sale? My poor wallet... I'm going to pick up Clojure Programming (http://shop.oreilly.com/product/0636920013754.do) after hearing so many good things about it.