Semantics of programming languages

Part 1 Introduction: semantics mathematical preliminaries. Part 2 Basic concepts: a simple imperative language a simple applicative language recursion. Part 3 An Algol-like language: an Algol-like language Part 4 Advanced techniques: an introduction to category theory possible worlds recursively-defined domains.