Abstracting Effect Systems for Algebraic Effect Handlers
Takuma Yoshioka (1), Taro Sekiyama (2), Atsushi Igarashi (1) ((1), Kyoto University, (2) National Institute of Informatics & SOKENDAI)

TL;DR
This paper introduces a generic effect system for algebraic effect handlers based on effect algebras, ensuring safety and expressiveness across various existing systems through a unified framework.
Contribution
It presents a parameterized language ${\lambda_{\mathrm{EA}}}$ with an effect system abstracted by effect algebras, providing a unified approach to guarantee safety and compare different effect systems.
Findings
Effect algebras can model various effect collection representations.
The framework guarantees type-and-effect safety under certain conditions.
It can differentiate safety aspects of existing and new effect systems.
Abstract
Many effect systems for algebraic effect handlers are designed to guarantee that all invoked effects are handled adequately. However, respective researchers have developed their own effect systems that differ in how to represent the collections of effects that may happen. This situation results in blurring what is required for the representation and manipulation of effect collections in a safe effect system. In this work, we present a language equipped with an effect system that abstracts the existing effect systems for algebraic effect handlers. The effect system of is parameterized over effect algebras, which abstract the representation and manipulation of effect collections in safe effect systems. We prove the type-and-effect safety of by assuming that a given effect algebra meets certain properties…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsModel-Driven Software Engineering Techniques · Software Engineering Research
