Required Reading:
Felleisen, Findler, Flatt, Gray, Krishnamurthi, Proulx How to Design Classes MIT Press, 2010
Recommended Readings:
Friedman, Felleisen
The Little Schemer: Fourth Edition MIT Press, 1996
an alternative introduction to recursive programming
Friedman, Felleisen
The Seasoned Schemer MIT Press, 1996
more on functional and imperative programming
Felleisen, Friedman
A Little Java, A Few Patterns MIT Press, 1998
why all this matters and how it scales to Java
Strunk and White
The Elements of Style Bartelby.Com, 1918
there is no better book on style in writing (anything)
Scheme Readings:
If you wish to learn to use Scheme as a tool, which is
not
the goal of this course, then take a look at the following:
the manuals in the Help Desk for the libraries in DrScheme
the Scheme cookbook,
a collection of Scheme programming recipes