- Paperback: 1029 pages
- Publisher: Digital Press; 2nd Updated edition (June 15, 1990)
- Language: English
- ISBN-10: 1555580416
- ISBN-13: 978-1555580414
- Product Dimensions: 6.5 x 2 x 9.5 inches
- Shipping Weight: 3 pounds
- Average Customer Review: 16 customer reviews
- Amazon Best Sellers Rank: #623,199 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Common LISP. The Language. Second Edition 2nd Updated Edition
Use the Amazon App to scan ISBNs and compare prices.
Customers who viewed this item also viewed
What other items do customers buy after viewing this item?
This is the Lisp programmers' bible. If you need to know the official specification, every function defined in Common Lisp can be found in here somewhere. Anyone vaguely serious about programming in Lisp for extended periods of time should keep a copy of this book for reference. However, note that while this book is clearly written, it is not an introduction to programming in Lisp--Common Lisp: The Language only offers the language specification.
From the Publisher
Throughout, you'll find fresh examples, additional clarifications, warnings, and tips - all presented with the author's customary vigor and wit. The defacto standard - a must-have for all LISP programmers.
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
In general, I think this book makes a much better reference than the HyperSpec, and I don't think any other book I've seen can compare. GLS is a terrific writer - very clear with a dry sense of humor that pervades the book, and has a number of useful examples. While there are many parts of Common Lisp that can be difficult to comprehend at first glance (e.g., backquotes) GLS's presentation brings a clarity to the effort that makes it a pleasure to read (and in the case of FORMAT, read again and again! ;-)
Read the index carefully for additional humor! END
However, as a previous reviewer pointed out, CLTL is strictly a reference, not a text. If you attempt to use it as an introductory text, you will hate both the book and the language, which will be your loss. To learn the language, I would recommend either "Lisp", by Winston and Horn, or "ANSI Common Lisp", by Paul Graham. After perhaps several years of serious Lisp programming, you will most likely find yourself studying the pages of CLTL, at which point you will appreciate what Guy Steele has succeeded in accomplishing in this slender volume of 1029 pages. Common Lisp is an enormous language, with over 800 built-in functions, many of which have complicated semantics and dozens of keywords that alter those semantics. Considering the daunting task of documenting this language, Steele deserves a medal. (In fact, the book has received various awards.)
Common Lisp was an integral part of several classes that I taught at Caltech for many years; I had students write compilers, interpreters, theorem provers, symbolic manipulators, numerical solvers, graph algorithms, etc. When you attack such a wide range of problems with a single language, you appreciate how rich Common Lisp is, and how well suited it is to all these tasks (yes, even numerical computation). But to get the most out of the language, it's necessary to tap into its more esoteric functions, which is where Steele's book is very handy.
I can think of few topics in the field of computer science that have as rich a history as the language Lisp. It's difficult to present a meaningful view of the language, especially in it's "Common" incarnation, without delving into some of that history. Steele does this exceedingly well in CLTL, although I can understand how it can be off-putting to some; it adds bulk to an already formidable tome, and at times seems to clutter up what ought to be a cut-and-dried presentation of syntax and semantics. However, unless you subscribe to the mystical view that Lisp was created by divine fiat (a theory that is gaining popularity), then you will inevitably have questions as to why things were done in one way and not another. The answers provide insight into language design (or at least the workings of the X3J13 committee), and at times a better mastery of Common Lisp. For those who do not care for such details, Steele sets the digressions off from the main body of the text, making them easy to skip. But I, for one, am happy that this information is recorded somewhere. (If nothing else, it keeps the creationists at bay.)
Like the mathematician Gilbert Strang, who manages to inject humor into the driest of mathematical journals, Steele has found ample opportunities to sneak bits of wordplay and irreverence into CLTL for comic relief. Not only does Steele enliven his program fragments with snippets of pop culture, as in
"(loop for turtle in teenage-mutant-ninja-turtles do..."
but all such references are assiduously listed in the index, which makes it a real hoot to glance through. Listed there are "Mozart, Wolfgang Amadeus", and "Michelangelo (artist)" as well as "Michelangelo (turtle)". We also find things like "goody two-shoes", "oranges, comparing apples with", "square peg in round hole", and numerous foods, including garbanzo beans, ice cream, orange flavor beef, pizza, and peppermint. Under "pasta" we find "see also macaroni". But my favorite index entry is "kludges", which directs us to pages 1 through 971; which is, of course, the entire body of the book, excluding index and appendices. Steele obviously decided to have a little fun, which is understandable considering how dry such books tend to be.
But, before you click this book into your shopping cart, you should realize that the complete text is available on-line, and for free. I'm not sure how Steele swung this with the publisher, but it's out there in the public domain. Finally, I should point out that there are a number of excellent free Common Lisp interpreters available for many different platforms. The best I have found is CLISP, which is maintained primarily by Bruno Haible through the GNU Project. It's reasonably complete and robust.
Happy hacking. May cons be with you.
A very good overview of how Common Lisp represents numbers is also given in the book. The discussion is supplemented with a treatment of complex functions and many graphs are given illustrating their behavior, the graphs being generated by PostScript code by Common Lisp code. Also, there is a useful discussion of hashing in and how to implement user-defined structures in Common Lisp.
Also quite interesting is the discussion on the object-oriented extension to Common Lisp called the Common Lisp Object System (CLOS), which is based on generic functions, multiple inheritance, declarative method combination, and a meta-object protocol. The fundamental objects of CLOS are classes, instances, generic functions, and methods, and the author discusses each of these in detail. The use of CLOS has become important recently in the area of constraint programming and its applications.
Most recent customer reviews
Every single existing CL function is there (AFAIK), with rationale and explanation of some of the context of why/how it came about.Read more