Practical Common Lisp

that book is dead sexy —Xach on #lisp

(more blurbs)

This page, and the pages it links to, contain text of the Common Lisp book Practical Common Lisp published by Apress These pages now contain the final text as it appears in the book. If you find errors in these pages, please send email to These pages will remain online in perpetuity—I hope they will serve as a useful introduction to Common Lisp for folks who are curious about Lisp but maybe not yet curious enough to shell out big bucks for a dead-tree book. However, don't let that stop you from buying the printed version available from Apress at your favorite local or online bookseller. For the complete bookstore browsing experience, you can read the letter to the reader that appears on the back cover of the treeware edition of the book.

Practical Common Lisp wins Productivity Award at the 16th Annual Jolt Product Excellence Awards!

Powells | Barnes & Noble | Amazon

While things have settled down a bit lately, the pent-up demand for this book rocketed it up the charts at Amazon. Almost as soon as it started shipping, Practical Common Lisp became the #1 top selling Lisp book on Amazon. It also made it as high as #2 in the Languages & Tools category, #4 in Programming, #11 in Computers & Internet, and #543 in all books. Thanks for all your orders! Update 25 May 2005: Thanks to the high demand Apress has decided to do a 2nd printing. We'll have a chance to correct typos and other small errors that crept into the 1st printing so if you've found any, please send them to You can check the errata page to see if they've already been reported.

Download source code: tar.gz | zip

Now available: Lispbox v0.7 distributions

Spread the word

Like what you've read? Then help spread the word. Recommend this book to your friends. Write a review on Amazon. Blog about it. Link to this page from your web site. Whatever. Apress took a chance, publishing this book when other publishers thought there was no market for a Lisp book. While it's unlikely that I'll get rich off my royalties, we don't have to sell all that many copies for Apress to turn a profit and show the naysayers that Lisp has legs yet.

  1. Introduction: Why Lisp?
  2. Lather, Rinse, Repeat: A Tour of the REPL
  3. Practical: A Simple Database
  4. Syntax and Semantics
  5. Functions
  6. Variables
  7. Macros: Standard Control Constructs
  8. Macros: Defining Your Own
  9. Practical: Building a Unit Test Framework
  10. Numbers, Characters, and Strings
  11. Collections
  12. They Called It LISP for a Reason: List Processing
  13. Beyond Lists: Other Uses for Cons Cells
  14. Files and File I/O
  15. Practical: A Portable Pathname Library
  16. Object Reorientation: Generic Functions
  17. Object Reorientation: Classes
  18. A Few FORMAT Recipes
  19. Beyond Exception Handling: Conditions and Restarts
  20. The Special Operators
  21. Programming in the Large: Packages and Symbols
  22. LOOP for Black Belts
  23. Practical: A Spam Filter
  24. Practical: Parsing Binary Files
  25. Practical: An ID3 Parser
  26. Practical: Web Programming with AllegroServe
  27. Practical: An MP3 Database
  28. Practical: A Shoutcast Server
  29. Practical: An MP3 Browser
  30. Practical: An HTML Generation Library, the Interpreter
  31. Practical: An HTML Generation Library, the Compiler
  32. Conclusion: What's Next?