Week | Day | Date | Topic | Work Assigned | Work Due |
---|
1 | Tues | Aug 25 | Overview, Motivation, Core Scala | | |
| Thur | Aug 27 | The Nature of Doubles, The Design Recipe | | |
2 | Tues | Sep 01 | Type Checking, Conditional Functions, Compound Datatypes | | |
| Thurs | Sep 03 | Grading, DrScala, Tests, Binary Methods, Operators | Hwk 1 | |
3 | Tues | Sep 08 | Abstract Datatypes, Exceptions | | |
| Thur | Sep 10 | Exceptions, Overloading | | Hwk 1 |
4 | Tues | Sep 15 | Recursively Defined Datatypes | | |
| Thur | Sep 17 | First-Class Functions | Hwk 2 | |
5 | Tues | Sep 22 | Functions as Values, Parametric Types, Covariance | | |
| Thurs | Sep 24 | Checking Variance, For-Expressions | | |
6 | Tues | Sep 29 | Translating For-Expressions, The Environment Model | | |
| Thur | Oct 01 | Lexical vs Dynamic Scoping, Call-by-Name, Traits 1 | Hwk 3 | Hwk 2 |
7 | Tues | Oct 06 | Traits 2, Generative Recursion | | |
| Thurs | Oct 08 | More Generative Recursion, Accumulators | | |
8 | Tues | Oct 13 | MIDTERM RECESS | | |
| Thur | Oct 15 | More Accumulators, Tail Recursion | Hwk 4 | Hwk 3 |
9 | Tues | Oct 20 | Leftist Heaps, Functional Red-Black Trees | | |
| Thur | Oct 22 | Red Black-Trees Continued, Stream Processing
| | |
10 | Tues | Oct 27 | Guest Lecture: Shams Imam: Coroutines Scala-Project | | |
| Thur | Oct 29 | Variable Assignment and Environments | | |
11 | Tues | Nov 03 | Mutable Objects, Equality, Memoization | | |
| Thur | Nov 05 | The State Monad, Mechanical Proof Checking | Hwk 5 | Hwk 4 |
12 | Tues | Nov 10 | Programs as Proofs and the Curry Howard Isomorphism
| | |
| Thur | Nov 12 | Additional Scala Features, Extractors, Parser Combinators | | |
13 | Tues | Nov 17 | More Parser Combinators, Actors and Concurrency | | |
| Thur | Nov 19 | Tactical Theorem Proving | Hwk 6 | Hwk 5 |
14 | Tues | Nov 24 | Guest Lecture: Robert "Corky" Cartwright: The Y Combinator | | |
| Thur | Nov 26 | THANKSGIVING | | |
15 | Tues | Dec 01 | Functional Distributed Computing | | |
| Thur | Dec 03 | Course Wrap Up | | Hwk 6 |
| | | Homework 6 Survey Results | | |