Text this: The formal semantics of programming languages : an introduction / Glynn Winskel.