This section provides the assigned readings for the course. All readings are from the course textbook:
Abelson, Harold, Gerald Jay Sussman, and Julie Sussman. Structure and Interpretation of Computer Programs. 2nd ed. Cambridge, MA: MIT Press, 1996. ISBN: 9780262011532.
The book is available online through the MIT Press Web site, and is also available in downloadable form.
MIT Press: Structure and Interpretation of Computer Programs (SICP) main site
Downloadable file (ZIP - 1.2 MB), courtesy of MIT Press and used with permission. (The ZIP file contains: 212 .gif files, 39 .html files, 2 .jpg files, 1 .css file.)
| LEC # | TOPICS | READINGS |
|---|---|---|
| L1 | Introduction to Computation | |
| L2 | Scheme Basics | Section 1.1 |
| L3 | Procedures, Processes, and Recursion | Section 1.2 |
| L4 | Orders of Growth and Kinds of Procedures | Section 1.2 |
| L5 | Data Abstraction | Section 2.1 |
| L6 | Higher Order Procedures | Section 1.3 |
| L7 | Good Programming Practices | |
| L8 | Using Higher Order Procedures | Section 1.3, Section 2.2.4 |
| L9 | Symbols and Quotation | Section 2.3 |
| L10 | Tagged Data | Section 2.4 |
| L11 | Advanced Data Types | |
| L12 | Data Mutation | Section 3.3.1-3.3.3 |
| L13 | Trees, Graphs and Search | |
| L14 | Graphs and Search | |
| L15 | Environment Model | Section 3.1, Section 3.2 |
| L16 | Object Oriented Programming I | |
| L17 | Object Oriented Programming II | |
| L18 | Object Oriented Programming III | |
| L19 | Interpretation | |
| L20 | The Meta-circular Evaluator | Section 4.1 |
| L21 | Lazy Evaluation | Section 4.2, Section 3.5 |
| L22 | Asynchronous Computing | Section 3.4 |
| L23 | Universal Machines | |
| L24 | Geometric Folding Algorithms: Origami, Linkages, and Polyhedra | |
| L25 | Peer-To-Peer Computing Research: A Fad? | |
| L26 | Computability |
