Control structures<br>in programming languages<br>From goto to algebraic effects
Control structures
in programming languages
From goto to algebraic effects<br>Xavier Leroy
June 5, 2026
This is a preview of a book to be published by Cambridge University Press. It is distributed under the terms of the CC BY-NC-SA 4.0 license.
Contents
Preface
Introduction
Part I
Control structures for imperative languages
Chapter 1 Early programming languages
Chapter 2 Structured programming
Chapter 3 Non-local control
Chapter 4 Control inversion
Part II
Control operators for functional languages
Chapter 5 Functional languages
Chapter 6 Continuations and the CPS transformation
Chapter 7 Programming with continuations
Chapter 8 Control operators
Part III
From exceptions to algebraic effects and handlers
Chapter 9 Exceptions
Chapter 10 Effect handlers for user-defined effects
Chapter 11 Monads
Chapter 12 Algebraic effects
Part IV
Reasoning about control and effects
Chapter 13 Type and effect systems
Chapter 14 Hoare logic for control structures
Chapter 15 Separation logic for control operators
References
Index
This document was translated from LATEX by<br>HEVEA.