Parallel Algebraic Effect Handlers
@article{Xie2021ParallelAE, title={Parallel Algebraic Effect Handlers}, author={Ningning Xie and Daniel D. Johnson and Dougal Maclaurin and Adam Paszke}, journal={ArXiv}, year={2021}, volume={abs/2110.07493} }
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 _ , 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…
Figures from this paper
References
SHOWING 1-10 OF 13 REFERENCES
Effect handlers, evidently
- Computer ScienceProc. ACM Program. Lang.
- 2020
It is argued one can still express all important effects, while improving reasoning about effect handlers, and it is proved full soundness and coherence of the translation into plain lambda calculus is proved.
Handlers of Algebraic Effects
- Computer ScienceESOP
- 2009
An algebraic treatment of exception handlers is presented and handlers for other computational effects representable by an algebraic theory are introduced, which can be used to describe previously unrelated concepts from both theory and practice.
Freer monads, more extensible effects
- Computer Science
- 2015
This work presents a rational reconstruction of extensible effects, the recently proposed alternative to monad transformers, as the confluence of efforts to make effectful computations compose, and extensively uses and promotes the new sort of `laziness', which underlies the left Kan extension.
Retrofitting effect handlers onto OCaml
- Computer SciencePLDI
- 2021
This work presents a design and evaluate a full-fledged efficient implementation of effect handlers for OCaml, an industrial-strength multi-paradigm programming language, and strives to maintain the backwards compatibility and performance profile of existing Ocaml code.
Do be do be do
- Computer SciencePOPL 2017
- 2016
The design and implementation of Frank is explored, a strict functional programming language with a bidirectional effect type system designed from the ground up around a novel variant of Plotkin and Pretnar's effect handler abstraction and an exploration of future possibilities is contributed.
Algebraic Operations and Generic Effects
- MathematicsAppl. Categorical Struct.
- 2003
This work defines the notion of generic effect and shows that to give a generic effect is equivalent to giving an algebraic operation, and shows how the usual monadic semantics of the computational λ-calculus extends uniformly to incorporate generic effects.
Koka: Programming with Row Polymorphic Effect Types
- Computer ScienceMSFP
- 2014
This work proposes a programming model where effects are treated in a disciplined way, and where the potential side-effects of a function are apparent in its type signature, and describes a polymorphic type inference system based on Hindley-Milner style inference.
Monads for functional programming
- Computer ScienceNATO ASI PDC
- 1992
The use of monads to structure functional programs is described and three case studies are looked at in detail how monads ease the modi cation of a simple evaluator,How monads act as the basis of a datatype of arrays subject to in place update and how monad can be used to build parsers.
Row-based effect types for database integration
- Computer ScienceTLDI '12
- 2012
We present CoreLinks, a call-by-value variant of System F with row polymorphism, row-based effect types, and implicit subkinding, which forms the basis for the Links web programming language. We…