Obviously our greatest debt is to Harold Abelson, Gerald Jay Sussman, and Julie Sussman. They have inspired us and taught us, and gave birth to the movement to which we are minor contributors. Julie carefully read what we thought was the final draft, made thousands of suggestions, both small and large, improved the book enormously, and set us back two months. Hal encouraged us, read early drafts, and also made this a better book than we could have created on our own.
Mike Clancy, Ed Dubinsky, Dan Friedman, Tessa Harvey, and Yehuda Katz also read drafts and made detailed and very helpful suggestions for improvement. Mike contributed many exercises. (We didn't take their advice about everything, though, so they get none of the blame for anything you don't like here.)
Terry Ehling, Bob Prior, and everyone at the MIT Press have given this project the benefit of their enthusiasm and their technical support. We're happy to be working with them.
The Computer Science Division at the University of California, Berkeley, allowed us to teach a special section of the CS 3 course using the first draft of this book. The book now in your hands is much better because of that experience. We thank Annika Rogers, our teaching assistant in the course, and also the thirty students who served not merely as guinea pigs but as collaborators in pinning down the weak points in our explanations.
Some of the ideas in this book, especially the different approaches to recursion, are taken from Brian's earlier Logo-based textbook. Many of our explanatory metaphors, especially the "little people" model, were invented by members of the Logo community. We also took the word and sentence data types from Logo. Although this book doesn't use Logo itself, we tried to write it in the Logo spirit.
We wrote much of this book during the summer of 1992, while we were on the faculty of the Institute for Secondary Mathematics and Computer Science Education, an inservice teacher training program at Kent State University. Several of our IFSMACSE colleagues contributed to our ideas both about computer science and about teaching; we are especially indebted to Ed Dubinsky and Uri Leron.
We stole the idea of a "pitfalls" section at the end of each chapter from Dave Patterson and John Hennessy.
We stole some of the ideas for illustrations from Douglas Hofstadter's wonderful Godel, Escher, Bach.
David Zabel helped us get software ready for students, especially with compiling SCM for the PC.
We conclude this list with an acknowledgment of each other. Because of the difference in our ages, it may occur to some readers to suspect that we contributed unequally to this book—either that Matt did all the work and Brian just lent his name and status to impress publishers, or that Brian had all the ideas and Matt did the typing. Neither of these is true. Almost everything in the book was written with both of us in front of the computer, arguing out every paragraph. When we did split up to write some sections separately, each of us read and criticized the other's work. (We're a little surprised that we still like each other, after all the arguments!) Luckily we both like the Beatles, Chinese food, and ice cream, so we had a common ground for programming examples. But when you see an example about Bill Frisell, you can be pretty sure it's Matt's writing, and when the example is about Dave Dee, Dozy, Beaky, Mick, and Tich, it's probably Brian's.
 Computer Science Logo Style, volume 1: Intermediate Programming, MIT Press, 1985.
(back to Table of Contents)
BACK chapter thread NEXT