CS61A Structure and Interpretation of Computer Programs





Announcements

2011-07-01

If you're interested in extra resources regarding learning Scheme and using recursion in Scheme you might find the CS3L lecture archive helpful: CS3 Videos - Good Scheme Practice


Calendar (The links will start to work as we go)

SICP is short for your textbook, Structure and Interpretation of Computer Programs.


Week Date Homework/Projects Lecture Reading
(due before lecture)
Lab/Discussion
1 6/20 M Functional Programming (BH Lect 1) A&S Sec1.1
(pages 1-31)
Lab 1A
6/21 Tu Functional Programming (BH Lect 1) Lab 1B (meet in lab)
6/22 W HW 1 due at 11:59pm Higher Order Procedures (BH Lect 2) A&S Sec 1.3 Lab 2
6/23 Th Class Potluck 6:30-9:00pm Wozniak Lounge In class quiz and solution
Higher Order Procedures (BH Lect 2)
Disc 2 - soln
6/24 F HW 2 due at 11:59pm  
2 6/27 M Project 1 due at 11:59pm Orders of Growth (BH Lect 3) A&S Sec 1.2-1.2.4
(pg 31-47)
Lab 3
6/28 Tu Recursion and Iteration (BH Lect 3) Disc 3 - soln
6/29 W HW 3 due at 11:59pm Data Abstraction (BH Lect 4) A&S Sec 2.1 & 2.2.1
(pg 79-106)
Lab 4
6/30 Th Sequences (BH Lect 4) Disc 4 - soln
6/24 F HW 4 due at 11:59pm  
3 7/4 M Holiday Holiday
7/5 Tu Project 2 (from the book) due at 11:59pm
Read before starting project 2
Map Reduce (part 1) Disc - soln
7/6 W Calculator (BH Lect 5) A&S Sec 2.2.2 - 2.2.3, 2.3.1, 2.3.3 Lab 5
7/7 Th Hierarchical Data (BH Lect 5) Disc 5 - soln
7/8 F HW 5 due at 11:59pm  
7/9 Sa Review Session 1-4pm 306 Soda - soln  
4 7/11 M Exam 1 7:30-10:00pm 2050 VLSB rubric draft Scheme1 (BH Lect 6) Sec 2.4 - 2.5.2
(pages 169-200)
Lab 6
7/12 Tu Generic Operators (BH Lect 6) Disc 6 - Soln
7/13 W HW 6 due at 11:59pm Object-oriented programming (BH Lect 7) Object-Oriented Programming-Above-the-line view Lab 7
7/14 Th Object-oriented programming (BH Lect 7) Disc 7 - Soln
7/15 F HW 7 due at 11:59pm  
5 7/18 M Project 3 - Part 1 due at 11:59pm Assignment, state (BH Lect 8) A&S 3.1 & 3.2
Object-Oriented Programming - Below-the-line view
Lab 8
7/19 Tu Environments (BH Lect 8) Disc 8 - Soln
7/20 W HW 8 due at 11:59pm Mutable data (BH Lect 9) A&S Sec 3.3.1-3 Lab 9
7/21 Th Vectors (BH Lect 9) Disc 9 - Soln
7/22 F HW 9 due at 11:59pm  
7/23 Sa Project 3 - Part 2 due at 11:59pm
Review Session 1-4pm 306 Soda - soln
 
6 7/25 M Exam 2 7:30-10pm 2050 VLSB rubric draft Client/server (BH Lect 10) video1 video2 A&S Sec 3.4 Lab 10
7/26 Tu Concurrency (BH Lect 10) Disc 10 - Soln
7/27 W HW 10 due at 11:59pm Streams (BH Lect 11) A&S Sec 3.5.1-3.5.3, 3.5.5
MapReduce
Lab 11
7/28 Th Metacircular evaluator (BH Lect 12) A&S Sec 4.1.1-4.1.6
~cs61a/lib/mceval.scm
Disc 11 - Soln
7/29 F HW 11 due at 11:59pm  
7 8/1 M Analyzing evaluator (BH Lect 13) ~cs61a/lib/analyze.scm Lab 12
8/2 Tu Lazy evaluator (BH Lect 14) A&S Sec 4.2, 4.3, 4.4.1-4.4.3 Disc 12 - Soln
8/3 W HW 12 due at 11:59pm Logic programming (BH Lect 15) Lab 13
8/4 Th Map Reduce Part 2 Disc 13 - Soln
8/6 Sa Project 4 - Part 1 due at 11:59pm  
8 8/8 M Project 4 - Part 2 due at 11:59pm Alan Kay: User Interfaces (1) (2) Extended Office Hours
8/9 Tu Review Session 7-10pm 306 Soda - soln
HW 13 due at 11:59pm soln
Therac/Programming Practices Therac Reading Disc 14 - soln
8/10 W Course Retrospective Review in lab
8/11 Th Final Exam 7-10pm 155 Dwinelle Tips for jobs and grad school Extended Office Hours

Schedule moved - use the Schedule link at the top of the page

Resources


Acknowledgments

This is an incomplete list, since to list every contribution to this course would be infeasible. Thank you to all the following people, without whose substantial support this course could not have materialized. First, thank you to Brian Harvey, who is responsible for the primary source for all of the lectures. Thank you to George Wang, instructor for Summer 2010, for many of the homework questions, lab modifications, lecture slides, as well as general advice. The discussion notes are a product of Chung Wu's originals, combined with modifications from Justin Chen, Jordan Rose, and Ahmed Owainati. The lecture notes are a derivative work of Brian Harvey's lectures.