HomeGroupsTalkMoreZeitgeist
Search Site
This site uses cookies to deliver our services, improve performance, for analytics, and (if not signed in) for advertising. By using LibraryThing you acknowledge that you have read and understand our Terms of Service and Privacy Policy. Your use of the site and services is subject to these policies and terms.

Results from Google Books

Click on a thumbnail to go to Google Books.

Loading...

ANSI Common LISP

by Paul Graham

MembersReviewsPopularityAverage ratingMentions
538345,261 (4.1)1
KEY BENEFIT: Teaching users new and more powerful ways of thinking about programs, this two-in-one text contains a tutorial--full of examples--that explains all the essential concepts of Lisp programming, plus an up-to-date summary of ANSI Common Lisp, listing every operator in the language. Informative and fun, it gives users everything they need to start writing programs in Lisp both efficiently and effectively, and highlights such innovative Lisp features as automatic memory management, manifest typing, closures, and more. Dividing material into two parts, the tutorial half of the book covers subject-by-subject the essential core of Common Lisp, and sums up lessons of preceding chapters in two examples of real applications: a backward-chainer, and an embedded language for object-oriented programming. Consisting of three appendices, the summary half of the book gives source code for a selection of widely used Common Lisp operators, with definitions that offer a comprehensive explanation of the language and provide a rich source of real examples; summarizes some differences between ANSI Common Lisp and Common Lisp as it was originally defined in 1984; and contains a concise description of every function, macro, and special operator in ANSI Common Lisp. The book concludes with a section of notes containing clarifications, references, and additional code. For computer programmers.… (more)
None
Loading...

Sign up for LibraryThing to find out whether you'll like this book.

No current Talk conversations about this book.

» See also 1 mention

Showing 3 of 3
Paul Graham and his editor(s) are excellent. His prose is light and easy to follow. The only awkward component of the book's organization is that he tends to use a concept one section before explicitly introducing and defining that concept. I'm not sure yet if this is a good or bad thing.

As a learning resource

Among books recommended to potential Lispers, ANSI Common Lisp is typically written off. Graham's style of Lisp is called "non-idiomatic". That's fair, both ANSI Common Lisp and On Lisp feature aspects of Common Lisp that lend themselves to functional programming. And as those of you who've read Practical Common Lisp know, Common Lisp (unlike Scheme) was not designed to be a functional programming language. Ultimately ANSI Common Lisp covers the same topics Practical Common Lisp does, if not more. But ANSI Common Lisp is better written, in less space, and with shorter examples.

I'm impressed at Graham's ability to summarize. There is a graphic illustrating symbols as a structure composed of a name, a value, a function, a package, and a property list. Although other resources (books and otherwise) mention symbols as having one or more of these components, his graphic was the first representation that clicked for me. He also provides clarity about packages being namespaces for names (symbols) not objects or functions.

And toward the end of the book, there is a discussion on the "instance" abstraction (relative to the class definitions themselves) being more powerful than plain "objects" that carry around methods themselves. This has been the single most useful discussion on the implementation of object-oriented constructs I've read yet.

Digression on Practical Common Lisp

Practical Common Lisp is often called the best introduction to Common Lisp. After reading both, I'd give Practical Common Lisp second place or call it a tie. The issue with Practical Common Lisp is that it takes too long to get anywhere and the practical chapters themselves are just as much a slog. And for as big as it is, Practical Common Lisp still doesn't include some major (potentially confusing) aspects of "modern" Common Lisp like ASDF, Quicklisp, production deployment strategies, etc.

Even after having read Practical Common Lisp I wasn't really clear how to pull together all the libraries I needed to get anything real done (e.g. scripting against an HTTP API or interacting with a SQL database). This is not to say that Practical Common Lisp is a bad book, it is a good book. But I definitely don't recommend reading it without also reading ANSI Common Lisp. And regardless, there are still a few of those modern concepts neither book covers. ( )
  eatonphil | May 8, 2022 |
NA
  pszolovits | Feb 3, 2021 |
A good introduction to the language and a some nice medium scale examples in the second half. I'd choose Norvig's Paradigms of Artificial Intelligence Programming, which is really a general book about Lisp programming techniques in spite of the title, if I could only have one Lisp book. And I would get Graham's other book On Lisp as a follow-up. But if you are a serious Lisper, get this, too, if only for the examples. Graham is a good programmer and worth learning from.
( )
  nillacat | Oct 15, 2007 |
Showing 3 of 3
no reviews | add a review
You must log in to edit Common Knowledge data.
For more help see the Common Knowledge help page.
Canonical title
Original title
Alternative titles
Original publication date
People/Characters
Important places
Important events
Related movies
Epigraph
Dedication
First words
Quotations
Last words
Disambiguation notice
Publisher's editors
Blurbers
Original language
Canonical DDC/MDS
Canonical LCC

References to this work on external resources.

Wikipedia in English

None

KEY BENEFIT: Teaching users new and more powerful ways of thinking about programs, this two-in-one text contains a tutorial--full of examples--that explains all the essential concepts of Lisp programming, plus an up-to-date summary of ANSI Common Lisp, listing every operator in the language. Informative and fun, it gives users everything they need to start writing programs in Lisp both efficiently and effectively, and highlights such innovative Lisp features as automatic memory management, manifest typing, closures, and more. Dividing material into two parts, the tutorial half of the book covers subject-by-subject the essential core of Common Lisp, and sums up lessons of preceding chapters in two examples of real applications: a backward-chainer, and an embedded language for object-oriented programming. Consisting of three appendices, the summary half of the book gives source code for a selection of widely used Common Lisp operators, with definitions that offer a comprehensive explanation of the language and provide a rich source of real examples; summarizes some differences between ANSI Common Lisp and Common Lisp as it was originally defined in 1984; and contains a concise description of every function, macro, and special operator in ANSI Common Lisp. The book concludes with a section of notes containing clarifications, references, and additional code. For computer programmers.

No library descriptions found.

Book description
Haiku summary

Current Discussions

None

Popular covers

Quick Links

Rating

Average: (4.1)
0.5
1 1
1.5
2
2.5 1
3 18
3.5 3
4 38
4.5 3
5 32

Is this you?

Become a LibraryThing Author.

 

About | Contact | Privacy/Terms | Help/FAQs | Blog | Store | APIs | TinyCat | Legacy Libraries | Early Reviewers | Common Knowledge | 205,964,109 books! | Top bar: Always visible