...
Week | Day | Date | Lecture Topic and Resources | Work Assigned | Work Due | ||
---|---|---|---|---|---|---|---|
1 | Tu | Aug 27 | Motivation and the Elements of Racket | HTDP Part 1 | Sep 03 | ||
Th | Aug 29 | Conditionals, Function Definitions and Computation by Reduction | Homework 0 | Sep 05S | |||
2 | Tu | Sep 03 | The Program Design Recipe for Racket | HTDP Part 2 | Sep 10 | ||
Th | Sep 05 | Inductively Defined Data and Structural Templates | Homework 1 | Sep 12 | |||
3 | Tu | Sep 10 | Conditionals, Functions on Ranges & Point Values, Compound Data | Functions as Data and Customizers | HTDP Part 3 | Sep 17 | |
Th | Sep 12 | Methods, Objects, Grading | Nameless Functions | Homework 2 | Sep 19 | ||
4 | Tu | Sep 17 | Homework 1 | Generative Recursion | HTDP Parts 5-6 | Sep 24Homework 0 | |
| Th | Sep 19 | Accumulators | Homework 3* | Sep 26 | ||
5 | Tu | Sep 24 | Macros and Lazy Evaluation | ? | |||
| Th | Sep 26 | Abstract Syntax and Term Rewriting | Homework 4* | |||
6 | Tu | Oct 01 | Homework 2 | Functional Design Patterns in OOP | Homework 1 | ||
| Th | Oct 03 | Generic Types, Type Hierarchy, Variance | OOP as an Extension of FP | Homework 5 | ||
7 | Tu | Oct 08 | Type Hierarchy, Variance, Generic Map FunctionTyped Lambda Calculus | ||||
| Th | Polymorphic Lambda Calculus | |||||
8 | Tu | Oct 15 | Midterm Recess (no classes) | ||||
| Th | Oct 17 | Homework 3 | Homework 2 | |||
9 | Tu | Oct 22 | Monads, For-expression desugaring | ||||
| Th | Oct 24 | Operators, Accumulators | ||||
10 | Tu | Oct 29 | Video: Growing a Language, by Guy L. Steele, Jr. | ||||
| Th | Oct 31 | |||||
11 | Tu | Nov 05 | |||||
| Th | Nov 07 | Homework 4 | Homework 3 | |||
12 | Tu | Nov 12 | Traits and Mixins | ||||
| Th | Nov 14 | |||||
13 | Tu | Nov 19 | State Monad | ||||
| Th | Nov 21 | Video: What to Leave Implicit, by Martin Odersky | Homework 5 | Homework 4 | ||
14 | Tu | Nov 26 | No Class | ||||
| Th | Nov 28 | Thanksgiving Holiday (no classes) | ||||
15 | Tu | Dec 03 | Course Wrap-Up | ||||
Th | Dec 05 | Exam 2 (in class) | Homework 5 | ||||
16 | Tu | Dec 10 | Study Day (no classes) | ||||
| Sat | Dec 14 | Final exam/project date scheduled by university |
...