Pikkukuvaa napsauttamalla pääset Google Booksiin.
Ladataan... ANSI Common LISPTekijä: Paul Graham
- Ladataan...
Kirjaudu LibraryThingiin nähdäksesi, pidätkö tästä kirjasta vai et. Ei tämänhetkisiä Keskustelu-viestiketjuja tästä kirjasta. 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. näyttää 3/3 ei arvosteluja | lisää arvostelu
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. Kirjastojen kuvailuja ei löytynyt. |
Current Discussions-Suosituimmat kansikuvat
Google Books — Ladataan... LajityypitMelvil Decimal System (DDC)005.133Information Computing and Information Computer programming, programs, data, security Programming Languages General Programming LanguagesKongressin kirjaston luokitusArvio (tähdet)Keskiarvo:
Oletko sinä tämä henkilö? |
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. ( )