CS 61A: Structure and Interpretation of Computer Programs
Summer 2026: Mon, Tue, Wed, Thu 5-6:30 p.m. in Li Ka Shing 245
Announcements: Wednesday, June 24
- Lab 01, HW 01, and Hog (first project) are released!
- If you have exam DSP accommodations, please verify on PrairieTest that your accommodations are factored in (it should show up on the home page where it shows your reservation time). If your accommodation isn't visible on PrairieTest, you will need to rebook your reservation to have it factored in.
- Quiz 1 logistics and practice quiz to be released (ideally) tomorrow.
Announcements: Tuesday, June 23
- Please use your @berkeley.edu email for accessing all course emails. All share requests to external emails will be denied.
- If you need to be assigned a lab/disc section or reschedule due to an immovable time conflict, email cs61a@berkeley.edu ASAP.
- If you were in Esha's lab yesterday and lost your keys and/or Berkeley Bowl tote bag, retrieve it from the Soda Hall lost and found (3rd floor front desk, across from Soda 384). See Ed post.
- New study resource: Askademia video playlists.
Announcements: Monday, June 22
Welcome to CS 61A!
Action required: Accept the invite to CS 61A on PrairieTest and book your orientation quiz (optional) and Quiz 1 (required) slots ASAP
Upcoming due dates:
- Lab 0 is due Tue 6/23
- Lab 1 is due Thu 6/25
- Orientation Quiz closes Fri 6/26
Current Assignments
Calendar
| Week | Date | Lecture & Exam | Reading | Lab & Discussion | Homework & Project | Quiz |
|---|---|---|---|---|---|---|
| 1 | Mon 6/22 |
1. Welcome, Coding Environment, Functions, and Exceptions I
|
Lab 00: Getting Started
Due
Tue 6/23
|
|||
| Tue 6/23 |
2. Control
|
Disc 00: Getting Started
|
Orientation Quiz (Optional)
Due
Fri 6/26
|
|||
| Wed 6/24 |
3. Higher-Order Functions
|
Lab 01: Functions, Control
Due
Thu 6/25
|
HW 01: Functions, Control, Higher-Order Functions
Due
Tue 6/30
Hog
Checkpt
Wed 7/1
Early Due
Mon 7/6
Due
Tue 7/7
|
|||
| Thu 6/25 |
4. Environments
|
Disc 01: Functions, Control | ||||
| 2 | Mon 6/29 |
5. Recursion
|
Lab 02: Higher-Order Functions, Lambda Expressions
Due
Tue 6/30
|
Quiz 1
Due
Tue 6/30
|
||
| Tue 6/30 |
6. Tree Recursion
|
Disc 02: Higher-Order Functions, Environment Diagrams
|
||||
| Wed 7/1 |
7. Sequences and Containers
|
Lab 03: Recursion, Tree Recursion
Due
Thu 7/2
|
||||
| Thu 7/2 |
8. Mutability and Data Abstraction
|
Disc 03: Recursion, Tree Recursion
|
HW 02: Recursion, Tree Recursion, Sequences, Python Lists
Due
Wed 7/8
|
|||
| 3 | Mon 7/6 |
9. Trees
|
Lab 04: Sequences, Trees
Due
Tue 7/7
|
Quiz 2
Due
Tue 7/7
|
||
| Tue 7/7 |
10. Iterators and Generators
|
Disc 04: Sequences, Trees
|
Cats
Checkpt
Tue 7/14
Early Due
Thu 7/16
Due
Fri 7/17
|
|||
| Wed 7/8 |
11. Exceptions II |
Lab 05: Mutability, Iterators, Generators
Due
Thu 7/9
|
||||
| Thu 7/9 |
12. Midterm Review
|
|
Disc 05: Mutability, Iterators, Generators
|
HW 03: Mutability, Trees, Iterators, Generators
Due
Wed 7/15
|
||
| 4 | Mon 7/13 |
Midterm (7-9 pm) | ||||
| Tue 7/14 |
13. Objects and Attributes
|
|||||
| Wed 7/15 |
14. Inheritance and String Representation
|
Lab 06: Object-Oriented Programming, Inheritance
Due
Thu 7/16
|
||||
| Thu 7/16 |
15. Mutable Trees
|
Disc 06: OOP, Inheritance
|
HW 04: Object-Oriented Programming, Inheritance, Mutable Trees
Due
Wed 7/22
|
|||
| Fri 7/17 |
Ants
Checkpt
Thu 7/23
Early Due
Mon 7/27
Due
Tue 7/28
|
|||||
| 5 | Mon 7/20 |
16. Linked Lists
|
Lab 07: String Representation, Mutable Trees
Due
Tue 7/21
|
Quiz 3
Due
Tue 7/21
|
||
| Tue 7/21 |
17. Efficiency
|
Disc 07: String Representation, Mutable Trees
|
||||
| Wed 7/22 |
18. Scheme
|
Lab 08: Linked Lists
Due
Thu 7/23
|
||||
| Thu 7/23 |
19. Scheme Lists
|
Disc 08: Linked Lists, Efficiency
|
HW 05: Linked Lists, Efficiency, Scheme
Due
Wed 7/29
|
|||
| 6 | Mon 7/27 |
20. Interpreters
|
Lab 09: Scheme, Scheme Lists
Due
Tue 7/28
|
Quiz 4
Due
Tue 7/28
|
||
| Tue 7/28 |
21. Tail Calls
|
|
Disc 09: Scheme, Scheme Lists
|
|||
| Wed 7/29 |
22. SQL and Tables
|
Lab 10: Interpreters, Tail Calls
Due
Thu 7/30
|
Scheme
Checkpt
Thu 8/6
Early Due
Wed 8/12
Due
Thu 8/13
|
|||
| Thu 7/30 |
23. Aggregation and Databases
|
Disc 10: Interpreters, Tail Calls
|
HW 06: SQL
Due
Wed 8/5
|
|||
| 7 | Mon 8/3 |
24. Special Topics I: TBD |
|
Lab 11: SQL
Due
Tue 8/4
|
Quiz 5
Due
Tue 8/4
|
|
| Tue 8/4 |
25. Special Topics II: TBD |
|
Disc 11: SQL
|
|||
| Wed 8/5 |
26. Special Topics III: TBD |
|
Lab 12: Final Review
Due
Mon 8/10
|
|||
| Thu 8/6 |
27. Final Review
|
|
Disc 12: Final Review
|
HW 07: Finale
Due
Mon 8/10
|
||
| 8 | Mon 8/10 |
28. Conclusion and Ask Me Anything |
|
|||
| Tue 8/11 |
Final (7-10 pm) |