CS 61A

Structure and Interpretation of Computer Programs, Fall 2014

Instructor: John DeNero




Announcements

Calendar

Week Date Lecture Reading Lab/Discussion Homework Project
1 Fri Aug 29 Functions
(Video) (1pp) (1pps) (8pp) (01.py)
1.1, 1.2 Discussion 0: Lost on the Moon (Solutions)
2 Mon Sep 01 * No Lecture: Labor Day * Lab 0: Intro to UNIX
Lab 1: Your own machine
Wed Sep 03 Names
(Video) (1pp) (1pps) (8pp) (02.py)
1.3, 1.4 Discussion 1: Expressions, Statements, and Functions (Solutions) Homework 1 (hw1.py) (Solutions)
Fri Sep 05 Control
(Video) (1pp) (1pps) (8pp) (03.py)
1.5 Hog (due Thu Sep 18)
3 Mon Sep 08 Higher-Order Functions
(Video) (1pp) (1pps) (8pp) (04.py)
1.6 Lab 2: Control and Higher Order Functions
Wed Sep 10 Environments
(Video) (1pp) (1pps) (8pp) (05.py)
1.6 Discussion 2: Higher Order Functions (Solutions) Homework 2 (hw2.py) (Solutions)
Quiz 1 (quiz1.py) (Solutions)
Fri Sep 12 Newton's Method
(Video) (1pp) (1pps) (8pp) (06.py)
1.6
4 Mon Sep 15 Recursion
(Video) (1pp) (1pps) (8pp) (07.py)
1.7 Lab 3: Lambdas and Recursion
Wed Sep 17 Tree Recursion
(Video) (1pp) (1pps) (8pp) (08.py)
1.7 Discussion 3: Recursion (Solutions) Hog Contest (due Wed Oct 01)
Fri Sep 19 Function Examples
(Video) (1pp) (1pps) (8pp) (09.py)
5 Mon Sep 22 * No Lecture: Midterm 1 *
Wed Sep 24 Data Abstraction
(Video) (1pp) (1pps) (8pp) (10.py)
2.1, 2.2 Discussion 4: Data Abstraction (Solutions) Homework 3 (hw3.py) (Solutions)
Fri Sep 26 Lists
(Video) (1pp) (1pps) (8pp) (11.py)
2.3
6 Mon Sep 29 Trees
(Video) (1pp) (1pps) (8pp) (12.py)
2.3 Lab 4: Lists Trends (due Thu Oct 09)
Wed Oct 01 Sequences
(Video) (1pp) (1pps) (8pp) (13.py)
2.3 Discussion 5: Trees (Solutions) Homework 4 (hw4.py) (Solutions)
Fri Oct 03 Mutable Values
(Video) (1pp) (1pps) (8pp) (14.py)
2.4
7 Mon Oct 06 Mutable Functions
(Video) (1pp) (1pps) (8pp) (15.py)
2.4 Lab 5: Rooted Trees, Linked Lists, and Dictionaries
Wed Oct 08 Objects
(Video) (1pp) (1pps) (8pp) (16.py)
2.5 Discussion 6: Mutable Data and Nonlocal (Solutions) Homework 5 (hw5.py) (Solutions)
Fri Oct 10 Inheritance
(Video) (1pp) (1pps) (8pp) (17.py)
2.5 Ants (due Thu Oct 23)
8 Mon Oct 13 Representation
(Video) (1pp) (1pps) (8pp) (18.py)
2.7 Lab 6: Object Oriented Programming
Wed Oct 15 Generic Functions
(Video) (1pp) (1pps) (8pp) (19.py)
2.7 Discussion 7: Inheritance and Interfaces (Solutions) Homework 6 (hw6.py) (Solutions)
Fri Oct 17 Composition
(Video) (1pp) (1pps) (8pp) (20.py)
2.8, 2.9
9 Mon Oct 20 Growth
(Video) (1pp) (1pps) (8pp) (21.py)
2.8 Lab 7: Linked Lists and Generic Functions
Wed Oct 22 Sets
(Video) (1pp) (1pps) (8pp) (22.py)
2.9 Discussion 8: Trees and Orders of Growth (Solutions)
Fri Oct 24 Data Examples
(Video) (1pp) (1pps) (8pp) (23.py)
10 Mon Oct 27 * No Lecture: Midterm 2 *
Wed Oct 29 Scheme
(Video) (1pp) (1pps) (8pp) (24.scm)
3.1, 3.2 Discussion 9: Scheme (Solutions)
Fri Oct 31 Exceptions
(Video) (1pp) (1pps) (8pp) (25.py)
3.3 Homework 7 (hw7.scm) (Solutions)
11 Mon Nov 03 Calculator
(Video) (1pp) (1pps) (8pp) (26.scm)
3.4 Lab 8: Scheme
Wed Nov 05 Interpreters
(Video) (1pp) (1pps) (8pp)
3.5 Discussion 10: Calculator (Solutions) Quiz 2 (quiz2.scm) (Solutions)
Fri Nov 07 Tail Calls
(Video) (1pp) (1pps) (8pp) (28.scm)
3.5 Homework 8 (hw8.scm) (Solutions) Scheme (due Fri Nov 21)
12 Mon Nov 10 Users
(Video) (1pp) (1pps) (8pp)
Lab 9: Adventure (Optional)
Wed Nov 12 Iterators
(Video) (1pp) (1pps) (8pp) (30.py)
4.2 Discussion 11: Tail Calls, Iterators, and Generators (Solutions)
Fri Nov 14 Streams
(Video) (1pp) (1pps) (8pp) (31.py)
4.2 Homework 9 (hw9.py) (Solutions)
13 Mon Nov 17 Declarative Programming
(Video) (1pp) (1pps) (8pp) (32.sql)
4.3 Lab 10: Iterators, Generators, and Streams
Wed Nov 19 Interpreting SQL
(Video) (1pp) (1pps) (8pp) (33.sql)
4.3 Discussion 12: SQL (Solutions) Scheme Contest (due Mon Dec 01)
Fri Nov 21 Recursive Select
(Video) (1pp) (1pps) (8pp) (34.sql)
4.3
14 Mon Nov 24 Distributed Computing
(Video) (1pp) (1pps) (8pp)
4.6
Wed Nov 26 * No Lecture: Thanksgiving *
Fri Nov 28 * No Lecture: Thanksgiving * Homework 10 (hw10.sql) (Solutions)
15 Mon Dec 01 Distributed Data
(Video) (1pp) (1pps) (8pp) (36.zip)
4.7 Lab 11: SQL
Wed Dec 03 Natural Language
(Video) (1pp) (1pps) (8pp) (37.zip)
Discussion 13: Final Review (Solutions) Quiz 3 (quiz3.sql) (Solutions)
Fri Dec 05 Conclusion
(Video) (1pp) (1pps) (8pp) (38.py)