Affiliation:
1. Microsoft Research, USA
Abstract
Algebraic effect handlers, introduced by Plotkin and Power in 2002,
are recently gaining in popularity as a purely functional approach to
modeling effects. In this article, we give a full overview of
practical algebraic effects in the context of a compiled
implementation in the Koka language. In particular, we show how
algebraic effects generalize over common constructs like exception
handling, state, iterators and async-await. We give an effective type
inference algorithm based on extensible effect rows using scoped
labels, and a direct operational semantics. Finally, we show an
efficient compilation scheme to common runtime platforms (like
JavaScript) using a type directed selective CPS translation.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
83 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Associated Effects: Flexible Abstractions for Effectful Programming;Proceedings of the ACM on Programming Languages;2024-06-20
2. Degrees of Separation: A Flexible Type System for Safe Concurrency;Proceedings of the ACM on Programming Languages;2024-04-29
3. Algebraic Effects Meet Hoare Logic in Cubical Agda;Proceedings of the ACM on Programming Languages;2024-01-05
4. Soundly Handling Linearity;Proceedings of the ACM on Programming Languages;2024-01-05
5. Answer Refinement Modification: Refinement Type System for Algebraic Effects and Handlers;Proceedings of the ACM on Programming Languages;2024-01-05