CS21b: Structure and Interpretation of Computer Programs

CS21b (Spring 2012): Structure and Interpretation of Computer Programs

"There are only 5 ideas in Computer Science, and by the time you
finish this course, you will know 3 of them."
Course instructor:
Harry Mairson (Volen 257, x2724, mairson@cs). Office
hours: Tuesday and Friday 10-11am, and by arrangement. If you can't
make these hours, drop by another time--I'm flexible, and usually in.
I promise to talk to you during office hours, and I probably will
anyways if it's another time.
TA:
Hui Qi, email.
Class Information
PROBLEM SETS
Submission Guidelines
Problem Set 1: Lunar Lander (due February 7).
pdf
required Scheme code
Problem Set 2: Computer Psychiatrist (due March 2).
pdf
required Scheme code
Problem Set 3: Stable Marriage (due March 16).
pdf
required Scheme code
Problem Set 4: Stream Processing (due March 23).
pdf
required Scheme code
Problem Set 5: Metacircular Evaluator (due April 17).
pdf
required Scheme code
normal order Scheme evaluator
Problem Set 6: Metacircular Compiler (due May 1).
pdf
required Scheme code
Handouts
Symbolic differentiation and pattern matching
Syntactic sugar: making the language you want
Separating syntactic analysis from execution