Aug 24 |
Introduction, Syllabus |
Language Design & Evolution |
Programming Language History, OCaml Introduction |
Aug 31 |
Classes of Languages |
OCaml Functions, Lists, Control Flow, Lab: OCaml Intro |
Compiled vs. Interpreted |
Sep 07 |
Paper Overview, Tail Recursion |
Describing Syntax, Lab: OCaml Tail Recursion |
Describing Semantics |
Sep 14 |
Axiomatic Semantics |
Basic Types |
Complex Types |
Sep 21 |
Exam Review |
EXAM 1 |
Exam Debrief |
Sep 28 |
OCaml Tuples & HOFs, Lab: OCaml Tuples & HOF |
Variables and Bindings |
Bindings and Scope |
Oct 5 |
Scope, OCaml Variant Types |
OCaml Recursive Types, Lab: OCaml Art |
Expressions |
Oct 12 |
Expressions |
Statements, Lab Time |
Statements |
Oct 19 |
OCaml Folding |
Subprograms |
Subprograms: Parameters |
Oct 26 |
Exam Review |
EXAM 2 |
Exam Debrief |
Nov 2 |
Subprograms: Generic Programming, Lab: OCaml Folding |
Subprograms: Generic Programming, Project Overview |
Subprograms: Lambdas, Closures, Generators, and Coroutines |
Nov 9 |
Paradigms: Object-Oriented |
Paradigms: Object-Oriented, Event-Driven |
Paradigms: Event-Driven |
Nov 18 |
Paradigms: Exceptional |
Paradigms: Exceptional |
Paradigms: Logic |
Nov 23 |
FALL BREAK |
FALL BREAK |
FALL BREAK |
Nov 30 |
Paper Presentations |
Paper Presentations |
Exam Review |