Effect Handlers for the Masses

by Jonathan Immanuel Brachthäuser, Philipp Schuster, and Klaus Ostermann

In Proc. ACM Program. Lang. 2(OOPSLA). Association for Computing Machinery, 2018.

This publication is related to the Lexical Effect Handlers research project.


Effect handlers are a program structuring paradigm with rising popularity in the functional programming language community and can express many advanced control flow abstractions. We present the first implementation of effect handlers for Java - an imperative, object oriented programming language. Our framework consists of three core components: A type selective CPS transformation via JVM bytecode transformation, an implementation of delimited continuations on top of the bytecode transformation and finally a library for effect handlers in terms of delimited continuations.


Video recording of the talk available on YouTube.