MIT 6.001 Structure and Interpretation, 1986

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. Created by MIT OpenCourseWare.


Average Course Length

35 hours


Skill Level

Intermediate



Pick a lesson


1: Lecture 1A
2: Lecture 1B
3: Lecture 2A
4: Lecture 2B
5: Lecture 3A
6: Lecture 3B
7: Lecture 4A
8: Lecture 4B
9: Lecture 5A
10: Lecture 5B
11: Lecture 6A
12: Lecture 6B
13: Lecture 7A
14: Lecture 7B
15: Lecture 8A
16: Lecture 8B
17: Lecture 9A
18: Lecture 9B
19: Lecture 10A
20: Lecture 10B