Parallel Algebraic Effect Handlers
Ningning Xie, Daniel D. Johnson, Dougal Maclaurin, Adam Paszke

TL;DR
This paper introduces a formal calculus for parallel algebraic effect handlers, enabling concurrent effect management and providing a Haskell implementation to support future development in this area.
Contribution
It formalizes {1}p, modeling effect handlers with parallelizable computations, and demonstrates expressibility and implementation insights for parallel algebraic effects.
Findings
Formalization of {1}p calculus for parallel effects
Examples demonstrating expressibility in the calculus
Haskell implementation supporting future research
Abstract
Algebraic effects and handlers support composable and structured control-flow abstraction. However, existing designs of algebraic effects often require effects to be executed sequentially. This paper studies parallel algebraic effect handlers. In particular, we formalize {\lambda}p, an untyped lambda calculus which models two key features, effect handlers and parallelizable computations, the latter of which takes the form of a for expression as inspired by the Dex programming language. We present various interesting examples expressible in our calculus, and provide a Haskell implementation. We hope this paper provides a basis for future designs and implementations of parallel algebraic effect handlers.
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
TopicsLogic, programming, and type systems · Formal Methods in Verification · Security and Verification in Computing
