Programming Languages

Dagstuhl Seminar on Domain-Specific Languages

Jonathan Brachthäuser
Researcher
Jonathan Immanuel Brachthäuser
attends the Dagstuhl-Seminar on “Algebraic Effect Handlers go Mainstream” from April 22 to 27, 2018.

Group photo of the participants of the Dagstuhl Seminar.
Photo courtesy of Schloss Dagstuhl - LZI GmbH (2018).

Abstract

Algebraic effect handlers are a program structuring paradigm with rising popularity in the functional programming language community. Effect handlers are less wide-spread in the context of imperative, object oriented languages. We present library implementations of algebraic effects in Scala and Java. Both libraries are centered around the concept of handler/capability passing and a shallow embedding of effect handlers. While the Scala library is based on a monad for multi-prompt delimited continuations, the Java library performs a CPS translation as bytecode instrumentation. We discuss design decisions and implications on extensibility and performance.

Further Information

Publications

Effekt: Extensible Algebraic Effects in Scala (Short Paper)

by Jonathan Immanuel Brachthäuser and Philipp Schuster

In Proceedings of the International Symposium on Scala. ACM Press, 2017.

Learn More

Effect Handlers for the Masses

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

In Proc. Int’l Conf. Object-Oriented Programming, Systems, Languages and Applications (OOPSLA). ACM Press, 2018.

Learn More