Resources by Topic
Conditionals
- Discussion 1: Control Structures and Higher Order Functions (Solutions)
- Homework 1 (due Wed 1/28) (Solutions)
- Quiz 1 (due Thu 1/29) (Solutions)
- Lab 2: Functions and Control Structures
- Control
(Video) (1pp) (1pps) (8pp) (03.py) - Hog (due Thu 2/5)
- Hog Contest (due Wed 2/18)
- 1.5
Data Abstraction
- Discussion 3: Data Abstraction (Solutions)
- Homework 4 (due Mon 2/23)
- Maps (due Thu 2/26)
Dictionaries
- Homework 5 (due Wed 3/4)
- Lab 5: Trees, Dictionaries, and Mutability
- Maps (due Thu 2/26)
Environments
Functions
Generators
- Discussion 10: Iterators, Generators, and Streams (Solutions)
- Lab 11: Iterators, Generators, and Streams
Higher Order Functions
Inheritance
- Lab 6: Object Oriented Programming
- Ants (due Thu 3/12)
Interpreters
- Homework 9 (due Mon 4/20)
- Lab 10: Interpreters
- Scheme (due Thu 4/23)
- Scheme Contest (due Mon 4/27)
Iterators
- Discussion 10: Iterators, Generators, and Streams (Solutions)
- Lab 11: Iterators, Generators, and Streams
Lambdas
Linked Lists
- Lab 4: Lists and Linked Lists
- Lab 8: Sets
Lists
- Homework 5 (due Wed 3/4)
- Lab 4: Lists and Linked Lists
- Maps (due Thu 2/26)
Nonlocal
- Homework 5 (due Wed 3/4)
Object Oriented Programming
- Discussion 5: Object Oriented Programming (Solutions)
- Homework 6 (due Mon 3/9)
- Lab 6: Object Oriented Programming
- Ants (due Thu 3/12)
Orders of Growth
- Discussion 7: Orders of Growth (Solutions)
Recursion
SQL
- Discussion 11: SQL (Solutions)
- Homework 10 (due Wed 4/29)
- Quiz 3 (due Thu 4/30)
- Lab 12: SQL
Scheme
- Discussion 8: Scheme (Solutions)
- Discussion 9: Tail Calls (Solutions)
- Homework 7 (due Wed 4/8)
- Homework 8 (due Wed 4/15)
- Quiz 2 (due Thu 4/9)
- Lab 9: Scheme
- Scheme (due Thu 4/23)
- Scheme Contest (due Mon 4/27)
Sets
- Homework 7 (due Wed 4/8)
Streams
- Lab 11: Iterators, Generators, and Streams
Trees
- Discussion 4: Trees (Solutions)
- Lab 5: Trees, Dictionaries, and Mutability
- Lab 8: Sets