The Seasoned Schemer (英语) 平装 – 1995年12月21日
"I learned more about LISP from this book than I have from any of the other LISP books I've read over the years... While other books will tell you the mechanics of LISP, they can leave you largely uninformed on the style of problem-solving for which LISP is optimized. The Little LISPer teaches you how to think in the LISP language... an inexpensive, enjoyable introduction." Gregg Williams, Byte
Daniel P. Friedman is Professor of Computer Science in the School of Informatics, Computing, and Engineering at Indiana University and is the author of many books published by the MIT Press, including The Little Schemer and The Seasoned Schemer (with Matthias Felleisen); The Little Prover (with Carl Eastlund); and The Reasoned Schemer (with William E. Byrd, Oleg Kiselyov, and Jason Hemann). Matthias Felleisen is Trustee Professor in the College of Computer Science at Northeastern University.
|5 星 (0%)|
|4 星 (0%)|
|3 星 (0%)|
|2 星 (0%)|
|1 星 (0%)|
I don't mean to be so harsh. I enjoyed reading The Little Lisper, and I intend to read the other "Little" books for their content (which is worthwhile) even if I don't appreciate their style.
Unfortunately The Seasoned Schemer has a strong inclination towards inside jokes for people who already know the material. In the process of charming the experienced reader it risks losing novices. How does a reference to Alonzo Church using call-with-current-continuation tell the novice that letcc is not available in many Scheme implementations? Why is there no real explanation of when and where to apply the "12th commandment" (use letrec to remove arguments that do not change for recursive application)? Why does a discussion about using closures and functions to model data structures devolve into trivia about circular lists? The text often seems like a sequence of such programming gems littered in a book with few clues for eyes unaccustomed to recognizing gems.
People familiar with the subject matter will enjoy the charming and concise discussion of fundamental (and often difficult) ideas. Other readers are probably better served by reading a proper text book on programming in Scheme. It's a real pity though, because once you get the inside jokes this really is a fine book! Just don't use it as your first book on programming in LISP like languages.
It covers a lot of ground in a slim volume (just as in "The Little Schemer"). This book introduces the concepts of closures and call-with-current-continuation (among other things).
As with "The Little Schemer", this book's strength is in its socratic instruction method. Lessons are written and illustrated as conversations between the reader and the instructor (in question/answer format). While this sounds strange, it is actually surprisingly effective as a means of learning the material. It might seem somewhat like rote instruction, but it can often frame foreign concepts in a rememberable fashion.
Neither of these books require much in the way of background or familiarity with the material. They were created as a means of teaching non-programmers to program in Scheme. However, I think they hold value for trained programmers as well.