Lectures
| Week | Date | Topic | Slides |
|---|---|---|---|
| 1 | Thursday, 9/6 | Course intro |
Slides Slides (w/animations) |
| 2 | Tuesday, 9/11 (at WCMA) | Aesthetics in programming / C |
Slides Slides (w/animations) |
| 2 | Thursday, 9/13 | Data types, values, and pointers |
Slides Slides (w/animations) By coincidence, one of your classmates (Eddy Varela) also produced some instructional videos on git. |
| 3 | Tuesday, 9/18 | Memory and call-by-value semantics |
Slides Slides (w/animations) |
| 4 | Tuesday, 9/25 | Lambda calculus |
Slides Slides (w/animations) |
| 4 | Thursday, 9/27 | Lambda calculus |
Slides Slides (w/animations) In-class code example: horcrux.c |
| 5 | Tuesday, 10/2 | Lambda calculus / intro to Halting Problem |
Slides Slides (w/animations) |
| 5 | Tuesday, 10/4 | Halting Problem / reductions |
Slides Slides (w/animations) |
| 5 | Thursday, 10/11 | LISP |
Slides Slides (w/animations) |
| 6 | Tuesday, 10/16 | Functional programming |
Slides Slides (w/animations) |
| 7 | Tuesday, 10/23 | ML |
Slides Slides (w/animations) |
| 7 | Thursday, 10/25 | ML |
Slides Slides (w/animations) |
| 8 | Tuesday, 10/30 | Parser combinators |
Slides Slides (w/animations) |
| 8 | Thursday, 11/1 | Project ideas / alpha normal form |
Slides Slides (w/animations) |
| 8 | Thursday, 11/6 | Type inference |
Slides Slides (w/animations) |
| 9 | Tuesday, 11/13 | Evaluation within a context |
Slides Slides (w/animations) |
| 9 | Thursday, 11/15 | Type inference |
Slides Slides (w/animations) |
| 10 | Tuesday, 11/20 | Object oriented programming |
Slides Slides (w/animations) |
| 11 | Thursday, 11/29 | Object oriented programming |
Slides Slides (w/animations) |
| 12 | Tuesday, 12/4 | Object oriented programming & Technical communication |
Slides Slides (w/animations) |
| 12 | Thursday, 12/6 | Recap |
Slides Slides (w/animations) |