6.001 - Structure and Interpretation of Computer Programs
Fall 2004

Current announcements

Posted, December 12: Prizes for the 6.001 project 4 contest

    We had a lot of great submissions for the contest for Project 4, in which you were invited to extend the Object Oriented world in an interesting way. After a lot of agonizing, Prof. Grimson selected the following entries for prizes (which will be distributed at the final exam).
    • Sara Mustin created a world of Type 1 diabetics. Patients striken with this disease had to eat, check their blood surgar, and then depending on the results, either expired, had to eat, or had to find a syringe and take insulin. In some cases, a kindly doctor would administer the insulin, and save the patient.
    • Mark Meyer created a world for playing quidditch, complete with an announcer, bludgers, quaffles, snitches, seekers, beaters, and so on. There is a full, 3D field, and the game is announced in full detail, with passes, shots, hits, requests for passes, all terminating when the snitch is caught.
    • Stephanie Cavagnaro-Wong independently created her own version of quidditch. As with the previous solution, it was full of players of different purposes, and involved intricate games before the snitch was caught.
    • Kah-Seng Tay created an XTerminal style command line parser. This turned the game into something much like a MUD (multi-user dungeon), in which simple commands could be entered and the system would interpret these commands and convert them into the appropriate Scheme code to interface to the game. In essence this gave a lexical parser and interpreter for the game.
    • Valerie Morash created a camera and picture class, which allowed a player to take and save pictures that could be viewed at later times. If other characters get cameras, they also take pictures, causing your screen to flash. And the pictures were actual graphical images!
    • David Roe created a complete event system, which allowed for spells and counterspells. Rather than directly calling other player's methods, all spells used events that would cause interactions between other objects within the world. This allows some very impressive spells (which have to be learned), and leads to impressive battles between characters.
    • Victor Costan created an entire object system using Java syntax.

Posted December 9, 2004: Lab evaluation

  • The Lab Assistants are interested in feedback on how well the 6.001 Lab served your needs. There is an anonymous survey at Lab survey that we would appreciate you using to provide feedback.

Posted December 7, 2004: Final exam details

  • The final exam is schedule for Wednesday, December 15th, at 1:30 in Johnson
  • The exam is closed book, however, you may bring three (3) sheets of 8.5 by 11 inch paper on which you may write any notes that you think will be of value to you during the exam.
  • If you wish to see your graded final,you may stop by 38-409B (Donna Kaufman) and look it over. Final exams are not returned. Please do not stop to see your exam until at least December 20th

Posted December 5, 2004: Survey says!

  • Please help make 6.001 better for future terms!

    As you know, 6.001 is conducting an educational experiment, in which we have changed the manner in which material is presented to you. We would really like to get your feedback on how well 6.001 met various pedagogical objectives, as well as on the course organization. As well, we would like to measure how well you think you've mastered specific design skills, as this will help us understand whether the new approach is pedagogically effective. The results will be used only for the purposes of guiding the development of the course, in order to improve the learning experience for future classes of students. To do this, we ask you to go to the on-line tutor, and complete the information listed as Problem Set 10. Thanks!

Posted December 1, 2004: Sample quiz solutions>

  • Example solutions for the two quizzes may be found at quiz1 and at quiz2.

Getting help in 6.001

    Just a reminder that the Lab Assistants in the 6.001 Lab are often available to provide help with course material. This is especially true if you visit the lab during non-peak hours (i.e. not right before a project is due)! See

    How to get help/Staff hours for lab

    for staffing hours.

Complete list of previous announcements

How to get help/Staff hours for lab

Course objectives and expected outcomes
Projects and project information
Reading assignments

Online version of the textbook, courtesy of MIT Press

Supplemental Material
General information
Don't Panic Manual and information on 6.001 Scheme
Emacs documentation and information on Athena
How to write up a project
Policy on collaborative work
Records of previous terms
Download scheme

Log in to the on line tutor
The tutor is now released for access to students in the class.
User Name:
If you do not yet have a tutor account, please register here first.

Send comments about this site to 6001-webmaster@ai.mit.edu.
Copyright © 1997-2004 by Massachusetts Institute of Technology. All rights reserved.