Lecture 1 - Expressing Parallel Computation (PDF)
Lecture 2 - Implicitly Parallel Programming in pH: Functions and Types (PDF)
Lecture 3 - A ג - calculus: A Basis for Functional Languages (PDF)
Lecture 4 - A ג - calculus with Constants and Let - blocks (PDF)
Lecture 5 - A ג - calculus with Let - blocks (continued) (PDF)
Lecture 6 - The Hindley - Milner Type System (PDF)
Lecture 7 - The Hindley - Milner Type System (Continued) (PDF)
Lecture 8 - Lists and Algebraic Types (PDF)
Lecture 9 - Desugaring List Comprehensions and Pattern Matching (PDF)
Lecture 10 - Programming with Arrays (PDF)
Lecture 11 - I- Structures and Open Lists (PDF)
Lecture 12 - M- Structures: Programming with State and Nondeterminism (PDF)
Lecture 13 - M- Structures Continued (PDF)
Lecture 14 - λS: A Lambda Calculus with Side - effects (PDF)
Lecture 15 - Using Monads for Input and Output (PDF)
Lecture 16 - Using Monads to Structure Computation (PDF)
Lecture 17 - Bluespec - 1: A language for hardware design, simulation and synthesis (PDF)
Lecture 18 - Bluespec - 2: Bluespec Compilation Model & Introduction to programming (PDF)
Lecture 19 - Bluespec - 3: The IP Lookup Problem (PDF)
Lecture 20 - Bluespec - 4: Modules and Type Classes (PDF)
Lecture 21 - Bluespec - 5: Programming Examples (PDF)
Lecture 22 - Term Rewriting Systems (PDF)
Lecture 23 - The Confluence of the ג - calculus (PDF)