Monday | Wednesday | Friday |
---|---|---|
  | 9/30 administrative details ML types and expressions functions reading: Ullman chapter 2, 3-3.2 notes |
10/2 mutable state let reading: Ullman 3.3-3.6 notes slides (ppt) slides (pdf) |
10/5 pattern matching merge sort notes |
10/7 quicksort more on polymorphism notes |
10/9 efficient reverse higher-order functions map anonymous functions reading: Ullman 3.5, 5.1.3, 5.3, 5.4 notes |
10/12 filter, reduce composition of functions reading: Ullman 5.6 notes |
10/14 Curried functions Python excursion reading: Ullman 5.5 notes |
10/16 defining types reading: Ullman 6-6.2 notes slides (ppt) slides (pdf) |
10/19 tail recursion type safety notes |
10/21 option type notes |
10/23 closures lexical scope notes |
10/26 structures reading: Ullman 8.2-8.2.2, 8.5.5 notes |
10/28 signatures notes |
10/30 midterm |
11/2 intro to Scheme notes slides (ppt) slides (pdf) |
11/4 higher-order functions let, let* internal definitions anonymous functions struct notes ML/Scheme Comparison |
11/6 polymorphism equality operators notes |
11/9 symbolic differentiation notes |
11/11 Veterans Day holiday |
11/13 dotted pairs parsing notes |
11/16 how to make a repl delayed evaluation thunks notes |
11/18 mutating procedures notes |
11/20 memoization simulating objects notes |
11/23 macros introduction to Ruby notes |
11/25 special topic: Scala notes |
11/27 Thanksgiving holiday |
11/30 More Ruby control structures blocks notes |
12/2 more blocks classes yield notes |
12/4 input file processing notes |
12/7 OOP in Ruby notes |
12/9 mixins notes |
12/11 C# notes |