Bibliography of documents related to Common Lisp

Peter Seibel, Practical Common Lisp

This is an excellent introduction to the Common Lisp language. Instead of focusing on mechanisms the way most other books do, this book is organized around practical examples related to contemporary problems.

Paul Graham, ANSI Common Lisp, Prentice Hall

This book is an introduction to the Common Lisp programming language. The programming style of Paul Graham is a bit different from the one you will find in most modern Common Lisp programs, but this fact is not likely to make a big difference to the debutant.

Paul Graham, On Lisp, Prentice Hall

This book is about advanced programming Common Lisp, and specifically how to use the Common Lisp language to create Domain Specific Languages (DSLs) using a technique called embedded languages. This entire book is available as a free download.

Sonya E. Keene, Object-Oriented Programming in Common Lisp, Addison Wesley

The Common Lisp object system (CLOS) is quite different from, and more power than that of other object-oriented languages. This books gives an introduction to object-oriented programming using CLOS. The book is a bit old, and this is particularly obvious in the examples given, but the mechanisms discussed have not changed, of course.

More information is available in the wikipedia article dedicated to this book.

Peter Norvig, Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp, Morgan Kaufmann

This is a very good programming book. Peter Norvig shows how to use advanced features of the Common Lisp language to program some of the traditional problems of Artificial Intelligence (search problems, natural languages, etc.), but it is definitely not a book about AI, but about programming techniques, so it is worth reading for everyone, and not only for those who are interested in AI.

Gregor Kiczales, Jim des Rivières, Daniel G. Bobrow, The Art of the Metaobject Protocol

In this book, the authors show how the Common Lisp Object System (CLOS) can be defined in a meta-circular way, i.e., as an object-oriented program using CLOS. Though this might sound like a cute exercise with little or no practical use, this is definitely not the case, because that is in fact how CLOS is written. The authors also discuss bootstrapping problems that invariably occur with such systems, and how these problems were solved in their implementation of CLOS called PCL. The second part of the book contains a complete specification of CLOS, and that part is available for free as online html.

More information is available in the wikipedia article dedicated to this book.

David Touretzky, COMMON LISP: A Gentle Introduction to Symbolic Calculation

The 1990 edition of this book is available as download for free. For a long time it was out of print, but now it is back in print "with minor revisions".

Guy L. Steele, Common Lisp the Language, second Edition

This book is as close to a reference manual for Common Lisp at it gets. Unfortunately, the book was published before the Common Lisp standard process was entirely finished, and there are some discrepancies between the contents of the book and what finally ended up in the standard.

Having said that, I think it is a great book, and it explains many things in much greater depth than what the HyperSpec is able to communicate. Furthermore, the entire books is available to download for free, or to consult as HTML.

More information is available in the wikipedia article dedicated to this book.