6.001 | Spring 2005 | Undergraduate

Structure and Interpretation of Computer Programs

Course Description

This course introduces students to the principles of computation. Upon completion of 6.001, students should be able to explain and apply the basic methods from programming languages to analyze computational systems, and to generate computational solutions to abstract problems. Substantial weekly programming assignments …
This course introduces students to the principles of computation. Upon completion of 6.001, students should be able to explain and apply the basic methods from programming languages to analyze computational systems, and to generate computational solutions to abstract problems. Substantial weekly programming assignments are an integral part of the course. This course is worth 4 Engineering Design Points.
Learning Resource Types
Online Textbook
Exams
Lecture Notes
Projects
Lecture Videos
Cover of the textbook, Structure and Interpretation of Computer Programs.
Adapted from the cover of the textbook, Structure and Interpretation of Computer Programs. 2nd ed., by Abelson, Harold, Gerald Jay Sussman, and Julie Sussman. (Image courtesy of MIT Press. Used with permission.)