Effekt
As opposed to the other members of the Effekt family, Effekt is a new standalone language. It extracts the essence of most of the other embedded language variants in a simple core calculus.
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 visit the Effekt homepage and read the technical report.
Related Publications
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 Proceedings of the International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2022.
Learn More
From Capabilities to Regions: Enabling Efficient Compilation of Lexical Effect Handlers
by Marius Müller, Philipp Schuster, Jonathan Lindegaard Starup, Klaus Ostermann, and Jonathan Immanuel Brachthäuser
In Proceedings of the International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2023.
Learn More
Compiling Effect Handlers in Capability-Passing Style
by Philipp Schuster, Jonathan Immanuel Brachthäuser, and Klaus Ostermann
In Proceedings of the International Conference on Functional Programming (ICFP). ACM Press, 2020.
Learn More
Effects as Capabilities: Effect Handlers and Lightweight Effect Polymorphism
by Jonathan Immanuel Brachthäuser, Philipp Schuster, and Klaus Ostermann
In Proceedings of the International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA). ACM Press, 2020.
Learn More
Zero-cost Effect Handlers by Staging (Technical Report)
by Philipp Schuster, Jonathan Immanuel Brachthäuser, and Klaus Ostermann
Technical report. University of Tübingen, Germany, 2019.
Learn MorePublications
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 Proceedings of the International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2022.
Learn More
From Capabilities to Regions: Enabling Efficient Compilation of Lexical Effect Handlers
by Marius Müller, Philipp Schuster, Jonathan Lindegaard Starup, Klaus Ostermann, and Jonathan Immanuel Brachthäuser
In Proceedings of the International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2023.
Learn More
Compiling Effect Handlers in Capability-Passing Style
by Philipp Schuster, Jonathan Immanuel Brachthäuser, and Klaus Ostermann
In Proceedings of the International Conference on Functional Programming (ICFP). ACM Press, 2020.
Learn More
Effects as Capabilities: Effect Handlers and Lightweight Effect Polymorphism
by Jonathan Immanuel Brachthäuser, Philipp Schuster, and Klaus Ostermann
In Proceedings of the International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA). ACM Press, 2020.
Learn More
Zero-cost Effect Handlers by Staging (Technical Report)
by Philipp Schuster, Jonathan Immanuel Brachthäuser, and Klaus Ostermann
Technical report. University of Tübingen, Germany, 2019.
Learn More