ETAPS 2022 Test of Time Award
The 2022 ETAPS Test of Time Award went to
Gordon Plotkin and Matija Pretnar
for their ESOP 2009 paper
Handlers of Algebraic Effects [doi].
Computational effects - mutable memory, non-deterministic and probabilistic choice, exceptions, and so on - have long been the awkward squad of semantic modelling and mathematically structured programming. This paper builds on a line of work connecting the computational theory of monads, used to model computational effects, with its universal algebraic facets, making formal connections between a language's programming constructs and algebraic operations that present the language's monadic semantics. It proposes an algebraic treatment of exception handlers and show that the mechanism underlying exception handling generalises to other kinds of computational effects, going far beyond exceptions. This discovery enabled a new paradigm: by keeping the theories free and exposing handlers syntactically, programmers as well as semanticists could investigate the connections between programming languages and equational theories.
This paper initiated a fruitful line of research into the semantics, implementation, design, and logic of programs with computational effects. Effect handlers have proven to be a versatile, modular, expressive, efficient, and intuitive programming abstraction. They have made their way into some of the main functional programming languages, and are crucial to the design of several large-scale programming platforms, well outside the functional programming communities in which they originated. These include GitHub (underlying its semantic analysis of every pull request on more than 50% of its open-source repositories) and the React GUI web framework (underlying the "React Hooks" feature).
The 2022 award committee consisted of
Rance Cleaveland
Ugo Dal Lago
Marieke Huisman
Jan Křetínský
Don Sannella (chair)
Gabriele Taentzer
Peter Thiemann