logo
Kurashizu Blogwhere ideas flow
  • Home
  • News
  • Blog
  • About
  • Home
  • News
  • Blog
  • About

© 2026 Kurashizu. All rights reserved.

Admin·New Post·Service Status
Powered by Cloudflare·02.11.26
← Back to news

Structure and Interpretation of Computer Programs Video Lectures (1986)

Original article
ocw.mit.edu|288 points|40 comments|by gjvc|Jul 7, 2026

📺 Video Lectures: Structure and Interpretation of Computer Programs (1986)

This resource is part of the Electrical Engineering and Computer Science curriculum provided by MIT OpenCourseWare. Specifically, it pertains to the course 6.001 as it was taught during the Spring 2005 semester.

🎓 Course Overview

The following table summarizes the administrative and academic details of the course:

AttributeDetail
Lead InstructorProf. Trevor Darrell
DepartmentElectrical Engineering and Computer Science
Academic LevelUndergraduate
Core SubjectsEngineering, Computer Science, Theory of Computation, Mathematics, Computation

📹 About the Video Series

These twenty instructional videos feature Hal Abelson and Gerald Jay Sussman. The series represents a comprehensive delivery of the course material, originally recorded in July 1986 for staff at Hewlett-Packard and professionally filmed by Hewlett-Packard Television.

Licensing Note: These materials are distributed under a Creative Commons license that permits commercial utilization.

📖 Relationship to the Textbook

The content of these lectures is aligned with the first edition (1985) of Structure and Interpretation of Computer Programs.

The first edition is the only relevant version. While the second edition (1996) introduced updated programs and additional content, these videos remain highly valuable for students using the newer text because the fundamental themes and the sequence of topics remain consistent.


🗺️ Curriculum Roadmap

The course progresses from basic functional building blocks to complex system architecture.

📜 Detailed Lecture Schedule

The lectures are divided into two parts per module:

  • Module 1:
    • 1A: Overview and Introduction to Lisp
    • 1B: Procedures and Processes; Substitution Model (where we evaluate f(x)→valuef(x) \rightarrow \text{value}f(x)→value)
  • Module 2:
    • 2A: Higher-order Procedures
    • 2B: Compound Data
  • Module 3:
    • 3A: Henderson Escher Example
    • 3B: Symbolic Differentiation; Quotation
  • Module 4:
    • 4A: Pattern Matching and Rule-based Substitution
    • 4B: Generic Operators
  • Module 5:
    • 5A: Assignment, State, and Side-effects
    • 5B: Computational Objects
  • Module 6:
    • 6A: Streams, Part 1
    • 6B: Streams, Part 2
  • Module 7:
    • 7A: Metacircular Evaluator, Part 1
    • 7B: Metacircular Evaluator, Part 2
  • Module 8:
    • 8A: Logic Programming, Part 1
    • 8B: Logic Programming, Part 2
  • Module 9:
    • 9A: Register Machines
    • 9B: Explicit-control Evaluator
  • Module 10:
    • 10A: Compilation
    • 10B: Storage Allocation and Garbage Collection

🛠️ Available Learning Materials

Students can access various resource types to supplement their learning:

  • Lecture Videos
  • Lecture Notes
  • Projects
  • Exams
  • Grading Rubrics

To access these, you can use the Download Course feature on the OCW portal.

💻 Example Concept: The Substitution Model

In the course, the substitution model is often represented conceptually as:

(define (square x) (* x x))
(square 5) 
;; becomes
(* 5 5) 
;; becomes
25

🖼️ Visual Gallery

Below are thumbnails associated with the lecture series:


⚖️ Institutional Information

© 2001–2026 Massachusetts Institute of Technology.

Disclaimer: When navigating away from MIT OpenCourseWare to external sites, please be aware that third-party terms of service and licensing may differ. MIT OCW does not endorse or assume responsibility for the content found on external websites.