Here is a typical syllabus for the lectures in a one-semester subject that follows the book. This sequence is drawn from a recent semester in our introductory course at MIT, 6.001, which has five contact hours a week.
The entire class meets for a large lecture twice weekly. This semester there were 25 lectures, as shown below. In addition, students meet twice a week in sections of 20-30 (typically taught by faculty) to review material presented in lecture. There are also weekly tutorials, where students met in groups of three with a graduate teaching assistant to review homework and other course material.
Note that we did not cover the entire book this semester. We skipped the material on logic programming (4.4) and the implementation of the register-machine simulator (5.2), and we touched only lightly on compilation (5.5). We also included extra material on intellectual property law as it relates to software, pattern matching, object-oriented programming (see the supplementary notes for the Adventure game programming assignment), and universal machines.
Topic Book section 1 Course overview 2 Introduction to Lisp 1.1 3 Higher-order procedures 1.3 4 Models of Computation 1.2 5 Compound data 2.1 6 Picture language 2.2.1, 2.2.4 7 Conventional interfaces 2.2.2, 2.2.3 8 Symbol manipulation 2.3 9 Pattern matching 10 Generic operators 2.4, 2.5 11 Patents and Copyrights 12 State 3.1 13 Environment model 3.2 14 Mutable data 3.3 15 Object-oriented programming 16 Concurrency 3.4 17 Streams 3.5 18 Metacircular evaluator 4.1 19 Universal machines 20 Non-deterministic computation 4.3 21 Register Machines 5.1 22 List-structured memory 5.3 23 Explicit-control evaluator 5.4 24 Compilation 5.5 25 The Grand Finale
webmistress@mitpress.mit.eduLast modified: Mon Oct 7 18:01:05 1996