Current Research Areas

Compiling with Continuations

We develop novel strategies to efficient implement advanced control-flow structuring mechanisms.

More about this project

Lexical Effect Handlers

The focus of this project is to study how to integrate the programming abstraction of effect handlers into general purpose programming languages.

More about this project

Type- and Effect Systems

We develop type- and effect systems that support lightweight forms of effect polymorphism and that can be integrated into existing programming languages.

More about this project
Other previous research projects include:

The Effekt Language

The language Effekt attempts to close the gap between research languages with effect handlers and languages for working programmers. The design of Effekt revolves around a different view of effects and effect types. Traditionally, effect types express which side effects a computation might have. In Effekt, effect types express which capabilities a computation requires from its context. This new point in the design space simplifies the treatment of effect polymorphism and the related issues of effect parametricity and effect encapsulation.

We invite you to experiment with the language on the Effekt homepage.

Language Homepage Publications

Recent Publications

Below we list a few recent publications. More publications can be found in the full list of publications.

What You See Is What You Get: Practical Effect Handlers in Capability-Passing Style

by Jonathan Immanuel Brachthäuser

In Ernst Denert Award for Software Engineering 2020. Springer International Publishing, 2022.

A Typed Continuation-Passing Translation for Lexical Effect Handlers

by Philipp Schuster, Jonathan Immanuel Brachthäuser, Marius Müller, and Klaus Ostermann

In Accepted for publication in Proceedings of the International Conference on Programming Language Design and Implementation (PLDI), 2022.

Effects, Capabilities, and Boxes: From Scope-based Reasoning to Type-based Reasoning and Back

by Jonathan Immanuel Brachthäuser, Philipp Schuster, Edward Lee, and Aleksander Boruch-Gruszecki

In Accepted for publication in Proceedings of the International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2022.

Region-based Resource Management and Lexical Exception Handlers in Continuation-Passing Style

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

In European Symposium on Programming (ESOP 2022), 2022.

Type-Level Programming with Match Types

by Olivier Blanvillain, Jonathan Immanuel Brachthäuser, Maxime Kjaer, and Martin Odersky

In Proc. ACM Program. Lang. 6(POPL). Association for Computing Machinery, 2022.

All Publications