Programming Languages
Lectures
- Lecture 00 – Preliminary functional programming.
- Lecture 01 – Functional programming 1.
- Lecture 02 – Functional programming 2: recursion schemes.
- Lecture 03 – Equational reasoning and structural induction.
- Lecture 04 – Deductive systems and natural deduction.
- Lecture 05 – Simply typed lambda calculus.
- Lecture 06 – Unification and type inference.
- Lecture 07 – Interpreters
- Lecture 08 – First-order logic.
- Lecture 09 – Resolution.
- Lecture 10 – SLD resolution and Prolog.
- Lecture 10 – Object-oriented programming.