Date |
Topic and Materials |
05/30 |
Introduction (slide) Ruby 1 (slides) Code: zip |
05/31 |
Ruby 2 (slides) Code: zip |
06/02 |
Ruby 3 (slides) Code: zip |
06/05 |
Ruby Regexp (slides) Code: zip |
06/07 |
OCaml Introduction (slides) Functions (slides)
Working with OCaml (slides)
Lists (slides) Code: zip |
06/09 |
Lists and polymorphic types (slides) Lets, Tuples, Records (slides) |
06/12 |
Higher order functions (slides) |
06/14 |
Higher order functions (slides) Data types (slides) |
06/16 |
Closures (slides) Imperative Programming (slides) |
06/19 |
Regexps and Finite Automata (slides) |
06/21 |
DFA NFA (slides) |
06/23 |
Context Free Grammar (slides) |
06/26 |
Parsing (slides) Code (zip) |
06/28 |
Objects and FP (slides)
Tail Recursion (slides) |
06/29 |
Midterm |
06/30 |
Semantics (slide) |
07/03 |
Lambda Calculus (slide) |
07/05 |
Lambda Encodings (slide) Code (github) |
07/07 |
Prolog Basics (slides), Code (github) |
07/10 |
Prolog Lists (slides) Code (zip) |
07/12 |
Prolog Advanced (slides) Code (zip) |
07/14 |
Software Security (slides) |
07/17 |
Web Security (slides) |
07/19 |
Memory Management (slides) History (slides) |
07/21 |
Final |