6.S184 - Zombies drink caffeinated 6.001
Introduction
The course description on the SIPB IAP
page sums this class up best:
Zombie-like, 6.001 rises from the dead to threaten
students again. Unlike a zombie, though, it's moving quite a bit
faster than it did the first time. Like the original, don't walk into
the class expecting that it will teach you Scheme; instead, it
attempts to teach thought patterns for computer science, and the
structure and interpretation of computer programs. Four projects will
be assigned and graded. Prereq: some programming experience; high
confusion threshold.
Your tour guides for this adventure are: Alex Vandiver, Edward Yang,
Keegan McAllister, Mike Phillips, Nelson Elhage, and Zev Benjamin. To
contact them, you can email 6.001-zombies at the obvious domain.
Logistics
- Class meets TR7-9pm throughout IAP, in 32-044
- 6 units of P/D/F credit are available to the approximately first
30 students registered officially with the Registrar. Only the
projects are graded.
- For the most part, arbitrary numbers of students for credit are
acceptable. The limitation on "approximately 30 students" applies only
for our grading sanity; just show up to the first lecture if you're
interested, and we'll figure something out if we're totally
overwhelmed.
Caffeinated Lectures
Slides presented in class will be included below. For each, we've noted
which SICP chapters and which Spring 2007 lectures we've drawn the
material from, in case you want to delve deeper, get a second opinion,
read ahead, etc. Please note that the book covers a lot of additional
material, and we are mostly tracking the old lectures, not the
textbook.
Projects
Projects should be saved as plain text, and emailed to
6.S184-projects or 6.S184-projects-no-credit at the obvious domains.
- Project 1: Integration and differentiation. Due by 7pm on Tuesday, January 17th.
- Project 2: Pattern matching for simplification. Due by 7pm on Tuesday, January 24th.
- Project 3: Metacircular evaluator. Due by 7pm on Tuesday,
January 31st.
- Project 4: OOP evaluator (The Adventure Game). Due by 11:59pm on Tuesday,
February 7th.
Resources
- Racket (previously DrScheme), the scheme evaluator we will be using
- Also available on Athena machines: add drracket; drracket
- For language selection, select "Use the language declared in the source." Hit the details button, and set the Output Style to 'write'. The Language menu will allow you to make these changes.
- Structure and Interpretation of Computer Programs, the textbook written for 6.001. A PDF version is also available.
- Lecture notes from 6.001, Spring 2007 might be useful for getting extra exposition on some topics as well, or to look ahead before the Caffeinated slides for those topics are posted.
- 6.001 online tutor, from the MIT iCampus XTutor project. This contains online problem sets you can do and get instant feedback (you will grow to love the "check" button as much as students of yore). We won't grade these — so ignore the due dates associated with them! — but some people may find it a useful way to do little exercises to check their understanding of the topics presented. It also contains online versions of the lectures, with synchronized audio and slides.
- The Revised5 Report on the Algorithmic Language Scheme:
PDF
| HTML
- A lecture from 6.001 Spring 2007 by Eric Grimson on Programming Methodology
Getting help
- You can e-mail the course staff at: 6.001-zombies at the obvious domain.
- Students are also welcome to join the staff on Zephyr, MIT's
messaging system. Subscribe to the class named "6.S184". If you're new to
Zephyr, we recommend the
excellent Barnowl
Zephyr client.
Acknowledgments
Since this course is a heavily condensed version of 6.001, we owe
thanks to all who have ever taught or otherwise supported 6.001 over
its long run. While these people are too numerous to list here, there are
definitely some names we would be remiss to omit:
- Eric Grimson, who has taught the course 27 times, and from
whose lecture slides and projects we have borrowed heavily.
- Gerry Sussman and Hal Abelson, the original architects of the
course and authors of the SICP text.
- Anne Hunter, Course 6's fairy godmother, for taking an interest
and helping make sure 6.S184 happened.
- SIPB, the Student Information Processing Board, for additional sponsorship