Monday | Wednesday | Friday |
---|---|---|
3/30 administrative details ML types and expressions reading: Ullman chapter 2 notes |
4/1 functions reading: Ullman 3-3.2 notes slides (ppt) slides (pdf) |
4/3 patterns, let reading: Ullman 3.3-3.6 notes slides (ppt) slides (pdf) |
4/6 merge sort, quicksort notes |
4/8 polymorphism efficient reverse reading: Ullman 3.5, 5.3 notes |
4/10 higher-order functions map, filter, reduce reading: Ullman 5.4 notes |
4/13 Curried functions composition of functions anonymous functions reading: Ullman 5.1.3, 5.5-5.6 notes |
4/15 more curried functions type safety notes |
4/17 tail recursion defining types reading: Ullman 6-6.2 notes slides (ppt) slides (pdf) |
4/20 more on defining types option type closures notes |
4/22 scope Java inner classes notes |
4/24 more on Java inner classes structures reading: Ullman 8.2-8.2.2, 8.5.5 notes |
4/27 signatures notes |
4/29 loose ends notes |
5/1 midterm |
5/4 intro to Scheme notes slides (ppt) slides (pdf) |
5/6 let, let* internal definitions notes |
5/8 struct equality operators anonymous functions higher-order functions notes |
5/11 how to make a repl symbolic differentiation notes |
5/13 parsing notes |
5/15 mutating procedures memoization notes |
5/18 delayed evaluation thunks notes |
5/20 macros simulating objects notes |
5/22 introduction to Ruby notes |
5/25 Memorial Day Holiday |
5/27 control structures blocks classes notes |
5/29 more on yield input notes |
6/1 file processing OOP in Ruby notes |
6/3 mixins notes |
6/5 review for the final C# notes |