6.001
Structure and Interpretation of Computer Programs
Spring 2005
Topics
- Introduction to Computation
- Introduction to Computation (cont.)
- Scheme Basics
- Scheme Basics (cont.)
- Procedures, Processes, and Recursion
- Procedures, Processes, and Recursion (cont.)
- Orders of Growth and Kinds of Procedures
- Orders of Growth and Kinds of Procedures (cont.)
- Data Abstraction
- Data Abstraction (cont.)
- Higher Order Procedures
- Higher Order Procedures (cont.)
- Good Programming Practices
- Good Programming Practices (cont.)
- Using Higher Order Procedures
- Symbols and Quotation
- Symbols and Quotation (cont.)
- Tagged Data
- Tagged Data (cont.)
- Advanced Data Types
- Advanced Data Types (cont.)
- Data Mutation
- Data Mutation (cont.)
- Live Lecture : Trees, Graphs and Search
- Trees, Graphs and Search (cont.)
- Live Lecture : Graphs and Search
- Graphs and Search (cont.)
- Environment Model
- Environment Model (cont.)
- Object Oriented Programming I
- Object Oriented Programming I (cont.)
- Object Oriented Programming II
- Object Oriented Programming II (cont.)
- Object Oriented Programming III
- Object Oriented Programming III (cont.)
- Interpretation
- Interpretation (cont.)
- The Meta-circular Evaluator
- The Meta-circular Evaluator (cont.)
- Lazy Evaluation
- Lazy Evaluation (cont.)
- Asynchronous Computing
- Asynchronous Computing (cont.)
- Universal Machines
- Universal Machines (cont.)
- Live Lecture : Geometric Folding Algorithms: Origami, Linkages, and Polyhedra (Guest lecture by Erik Demaine)
- Geometric Folding Algorithms (cont.)
- Live Lecture : Peer-To-Peer Computing Research: A Fad? (Guest lecture by Frans Kaashoek)
- Peer-To-Peer Computing Research (cont.)
- Computability
Readings
- This section provides the assigned readings for the course. All readings are from the course textbook:
- LEC #: L2 · TOPICS: Scheme Basics · READINGS: Section 1.1
- LEC #: L3 · TOPICS: Procedures, Processes, and Recursion · READINGS: Section 1.2
- LEC #: L4 · TOPICS: Orders of Growth and Kinds of Procedures · READINGS: Section 1.2
- LEC #: L5 · TOPICS: Data Abstraction · READINGS: Section 2.1
- LEC #: L6 · TOPICS: Higher Order Procedures · READINGS: Section 1.3
- LEC #: L8 · TOPICS: Using Higher Order Procedures · READINGS: Section 1.3, Section 2.2.4
- LEC #: L9 · TOPICS: Symbols and Quotation · READINGS: Section 2.3
- LEC #: L10 · TOPICS: Tagged Data · READINGS: Section 2.4
- LEC #: L12 · TOPICS: Data Mutation · READINGS: Section 3.3.1-3.3.3
- LEC #: L15 · TOPICS: Environment Model · READINGS: Section 3.1, Section 3.2
- LEC #: L20 · TOPICS: The Meta-circular Evaluator · READINGS: Section 4.1
- LEC #: L21 · TOPICS: Lazy Evaluation · READINGS: Section 4.2, Section 3.5
- LEC #: L22 · TOPICS: Asynchronous Computing · READINGS: Section 3.4
Sources
- Course catalogue ↗Historical OpenCourseWare
- MIT OCW calendar ↗
- MIT OCW readings ↗
- MIT OCW syllabus ↗
- Historical MIT OpenCourseWare offering. Named reading entries and schedule topics are automatically extracted from the linked source pages.