Other Sellers on Amazon
& FREE Shipping. Details
+ $5.75 shipping
87% positive over last 12 months
+ $3.99 shipping
90% positive over last 12 months
Usually ships within 4 to 5 days.
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required. Learn more
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Follow the Author
Practical Common Lisp 1st Corrected ed., Corr. 4th printing Edition
Purchase options and add-ons
If you're interested in Lisp as it relates to Python or Perl, and want to learn through doing rather than watching, Practical Common Lisp is an excellent entry point. — Chris McAvoy, Chicago Python Users Group
Lisp is often thought of as an academic language, but it need not be. This is the first book that introduces Lisp as a language for the real world.
Practical Common Lisp presents a thorough introduction to Common Lisp, providing you with an overall understanding of the language features and how they work. Over a third of the book is devoted to practical examples such as the core of a spam filter and a web application for browsing MP3s and streaming them via the Shoutcast protocol to any standard MP3 client software (e.g., iTunes, XMMS, or WinAmp). In other "practical" chapters, author Peter Seibel demonstrates how to build a simple but flexible in-memory database, how to parse binary files, and how to build a unit test framework in 26 lines of code.
Frequently bought together
About the Author
- Publisher : Apress; 1st Corrected ed., Corr. 4th printing edition (April 11, 2005)
- Language : English
- Hardcover : 500 pages
- ISBN-10 : 1590592395
- ISBN-13 : 978-1590592397
- Item Weight : 2.61 pounds
- Dimensions : 7 x 1.13 x 10 inches
- Best Sellers Rank: #611,895 in Books (See Top 100 in Books)
- #24 in Lisp Programming
- #57 in Software Programming Compilers
- #822 in Software Development (Books)
- Customer Reviews:
About the author
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
Thinking of this book, here's what comes to mind, -one of the most enjoyable learning experiences I have had. It communicates itself with effectiveness, originality and a careful attention to detail.
When I first began using this book, I was skeptical of it. Chapter 3 introduces Common Lisp with a 'Practical', a step-by-step build-up of a small Lisp program. The next few chapters explain syntax, functions, variables and macros.
I was skeptical because, at the time, I understood little of Chapter 3 and it seemed to me that the following chapters (syntax, functions, variables, etc.) should have preceded Chapter 3. There are no end-of-chapter directives and only the 'Practical' chapters include significant tasks for cementing concepts. What does it mean?
It becomes evident that this organization is a good thing. It forces the reader to engage the book with a fresh approach. After reading a few chapters following Chapter 3, a necessary re-read of Chapter 3 yields great understanding. It sets the reader into a rhythm of reading... reading some parts once for creative enjoyment and once again for critical comprehension.
This is an important aspect of this book and my appreciation of it. The author does not try to anticipate and satisfy the expectations of the reader (a linear presentation of mixed code/explanation). Instead, like an artist, the author presents his method and changes the reader's perspectives to match his own.
The organization also adds something to the long-term usability of the book. Mini-programs and behavior test-cases are mostly reserved for the 'Practical' chapters. The other chapters are not cluttered with these things and are devoted to single topics. 'For example there is a chapter devoted to numbers. Another chapter is about the 'format' function, Common Lisp's equivalent of printf. The material in these chapters is patiently and thoroughly presented.
This is one of my favorite books. After reading it I was able to write a Common Lisp program that uses classes, packages and macros.
This is a great introduction to a deep topic, starting with the first few chapters.
Once you've absorbed this book, I will admit it's a bit hard to go back to for reference. Seibel's style is insidious, he lets Lisp seep into you. You cannot point to a line and say, ha! that's where I learned macros, because macros are now a part of you. I think it's an excellent (nonpareil, even) pedagogical style. YMMV, but I'm all for Sidious Seibel's approach.
If you want a reference, blow your socks off with lispdoc-dot-com -- check it out now (be sure not to be drinking coffee before you go there!).
--- Historical ---
This book had a 2-star review. I created a 1-star review to address the specific criticisms made by that person. The old text pertaining to that is below.
... with a 1-star review! What better way?
I cannot imagine how the reviewer came up with 2 stars. Maybe: "This book is #1 (hence *cough* 1-star)" ?
Shoddy writing? Please! This book made me giggle in glee in parts...
Lisp in a Box seems to be the reviewer's only objection. It's easy to find and install, a more worthwhile endeavor than getting mad and swearing to find every single last reference to LispBox in subsequent chapters.
The 'Learn CL in 21 days' reference the reviewer makes is telling, they clearly expect a brief howto-learn-this-language-in-7 hours, judging by their admission that learning how the if statement works is the crux of learning a language.
Certainly this book is better read and digested before opening a lisp environment. And that is definitely the way to learn a new deep topic imho. Understand something in depth, then write small programs to test your understanding of it. Frittering away your time between writing one-liners and reading a book is just that, you won't gain any understanding. It may work for Perl, but ;-)
Lisp is a language to blow your mind. Expecting a quick howto is naive at best, and a sad troll attempt at worst. Read the music database chapter slowly and carefully. If you're attentive, you /will/ be hit with a wonderful epiphany of how Lisp is 'powerful'. Really. Really, really. Let the Loregasm begin!
Perhaps a crud way of describing is that you know how a high-level language complies into an abstract syntax tree of some intermediate representation which then is converted into low-level code for actual execution? LISP has a phase in the middle of that, where not only can you manipulate the intermediate representation, but you can alter the grammar of the reader itself and construct your own language that's designed for your given application. It's code that generates and manipulates code -- not a transpiler, not a text-preprocessor, not a different way of looking at functions.
Practical Common Lisp does a *beautiful* job of explaining the concepts, the language, and the practical bits and pieces you need to know to get what's happening well beyond syntax. It's side discussions and footnotes are pure gold and themselves are worth the cost of admission. The book goes deep into the libraries, the differences between environments, and covers many gotchas.
The book actually changes the way you think about programming, even if you've done it for years. It's that good.
Top reviews from other countries
Auch wenn man selbst nicht mit Common Lisp arbeiten wird, öffnet das Buch ganz neue Perspektiven. Es ist schon erstaunlich, wie weit Common Lisp seiner Zeit voraus war und noch ist.
Das Macro-System (nicht zu vergleichen mit dem C-Macros) erlaubt die Definition eigener Sprachen in Common Lisp - ein Ansatz, der heute als DSL (Domain Specific Language) bekannt ist und mit vergleichsweise wahnsinnig hohem Aufwand und Code-Generierung betrieben wird.
So kann man eigentlich bei jedem Feature anderer Programmiersprachen sagen: "Das hat Common Lisp auch, nur mächtiger und flexibler."