Massachusetts Institute of Technology
Department of Electrical Engineering and Computer Science

Structure and Interpretation of Computer Programs

Video Lectures by Hal Abelson and Gerald Jay Sussman

Structure and Interpretation of Computer Programs has been MIT's introductory pre-professional computer science subject since 1981. It emphasizes the role of computer languages as vehicles for expressing knowledge and it presents basic principles of abstraction and modularity, together with essential techniques for designing and implementing computer languages. This course has had a worldwide impact on computer science curricula over the past two decades. The accompanying textbook by Hal Abelson, Gerald Jay Sussman, and Julie Sussman is available for purchase from the MIT Press, which also provides a freely available on-line version of the complete textbook.

These twenty video lectures by Hal Abelson and Gerald Jay Sussman are a complete presentation of the course, given in July 1986 for Hewlett-Packard employees, and professionally produced by Hewlett-Packard Television. The videos have been used extensively in corporate training at Hewlett-Packard and other companies, as well as at several universities and in MIT short courses for industry.
Technical information on formats and hints on downloading Legal information and terms of use

Note: These files are intended to be downloaded, not streamed. To use them, do not click on the links to open them directly -- download them with your browser and save them.

These lectures are also available at the Internet Archive at this site.

Lecture 1a: Overview and Introduction to Lisp (1:13) (Divx 505 MB [download] [torrent], MPEG 1689 MB [download] [torrent]) Lecture 6a: Streams, Part 1 (1:07) (Divx 481 MB [download] [torrent], MPEG 1550 MB [download] [torrent])
Lecture 1b: Procedures and Processes; Substitution Model (0:58) (Divx 435 MB [download] [torrent], MPEG 1351 MB [download] [torrent]) Lecture 6b: Streams, Part 2 (1:03) (Divx 421 MB [download] [torrent], MPEG 1460 MB [download] [torrent])
Lecture 2a: Higher-order Procedures (1:01) (Divx 459 MB [download] [torrent], MPEG 1421 MB [download] [torrent]) Lecture 7a: Metacircular Evaluator, Part 1 (1:25) (Divx 615 MB [download] [torrent], MPEG 1960 MB [download] [torrent])
Lecture 2b: Compound Data (1:17) (Divx 561 MB [download] [torrent], MPEG 1779 MB [download] [torrent]) Lecture 7b: Metacircular Evaluator, Part 2 (1:00) (Divx 446 MB [download] [torrent], MPEG 1392 MB [download] [torrent])
Lecture 3a: Henderson Escher Example (1:16) (Divx 538 MB [download] [torrent], MPEG 1751 MB [download] [torrent]) Lecture 8a: Logic Programming, Part 1 (0:42) (Divx 282 MB [download] [torrent], MPEG 969 MB [download] [torrent])
Lecture 3b: Symbolic Differentiation; Quotation (0:44) (Divx 329 MB [download] [torrent], MPEG 1021 MB [download] [torrent]) Lecture 8b: Logic Programming, Part 2 (1:08) (Divx 504 MB [download] [torrent], MPEG 1592 MB [download] [torrent])
Lecture 4a: Pattern Matching and Rule-based Substitution (1:03) (Divx 465 MB [download] [torrent], MPEG 1463 MB [download] [torrent]) Lecture 9a: Register Machines (1:12) (Divx 524 MB [download] [torrent], MPEG 1666 MB [download] [torrent])
Lecture 4b: Generic Operators (1:23) (Divx 615 MB [download] [torrent], MPEG 1937 MB [download] [torrent]) Lecture 9b: Explicit-control Evaluator (1:11) (Divx 523 MB [download] [torrent], MPEG 1638 MB [download] [torrent])
Lecture 5a: Assignment, State, and Side-effects (1:15) (Divx 556 MB [download] [torrent], MPEG 1745 MB [download] [torrent]) Lecture 10a: Compilation (0:46) (Divx 338 MB [download] [torrent], MPEG 1059 MB [download] [torrent])
Lecture 5b: Computational Objects (1:05) (Divx 479 MB [download] [torrent], MPEG 1494 MB [download] [torrent]) Lecture 10b: Storage Allocation and Garbage Collection (0:59) (Divx 437 MB [download] [torrent], MPEG 1365 MB [download] [torrent])

Note: These lectures follow the first edition (1985) of Structure and Interpretation of Computer Programs. Many of the programs discussed were rewritten for the second edition (1996) of the book, and new material was added. These video lectures will still be useful for students using the second edition, since the overall themes of the course and order of presentation are unchanged.

Creative Commons License These video lectures are copyright by Hal Abelson and Gerald Jay Sussman. They are licensed under a Creative Commons License.
Last modified: Wed, 2 Aug 2006 00:19:11 -0400

Hal Abelson(hal@mit.edu)