Programming with algebraic effects and handlers
From MaRDI portal
Abstract: Eff is a programming language based on the algebraic approach to computational effects, in which effects are viewed as algebraic operations and effect handlers as homomorphisms from free algebras. Eff supports first-class effects and handlers through which we may easily define new computational effects, seamlessly combine existing ones, and handle them in novel ways. We give a denotational semantics of eff and discuss a prototype implementation based on it. Through examples we demonstrate how the standard effects are treated in eff, and how eff supports programming techniques that use various forms of delimited continuations, such as backtracking, breadth-first search, selection functionals, cooperative multi-threading, and others.
Recommendations
Cites work
- scientific article; zbMATH DE number 1705158 (Why is no real title available?)
- scientific article; zbMATH DE number 2087441 (Why is no real title available?)
- scientific article; zbMATH DE number 2090722 (Why is no real title available?)
- A new approach to abstract syntax with variable binding
- A theory of type polymorphism in programming
- Algebraic operations and generic effects
- An introduction to algebraic effects and handlers (invited tutorial paper)
- Combining algebraic effects with continuations
- Combining effects: sum and tensor
- From comodels to coalgebras: state and arrays
- Handlers of Algebraic Effects
- Modelling environments in call-by-value programming languages.
- Representing Control: a Study of the CPS Transformation
- Selection functions, bar recursion and backward induction
- Tensors of comodels and models for operational semantics
Cited in
(48)- Mac Lane's comparison theorem for the Kleisli construction formalized in Coq
- A Functional Abstraction of Typed Invocation Contexts
- Sound and complete type inference for closed effect rows
- Introducing \(\llparenthesis\lambda\rrparenthesis\), a \(\lambda \)-calculus for effectful computation
- scientific article; zbMATH DE number 2087428 (Why is no real title available?)
- Asymptotic speedup via effect handlers
- Handlers in action
- When programs have to watch paint dry
- Shallow effect handlers
- Fusion for free. Efficient algebraic effect handlers
- Effekt: Capability-passing style for type- and effect-safe, extensible effect handlers in Scala
- A type system for effect handlers and dynamic labels
- Runners in Action
- Continuity of Gödel's system T definable functionals via effectful forcing
- Structured handling of scoped effects
- Not by equations alone. Reasoning with extensible effects
- One-shot algebraic effects as coroutines
- Factorisation systems for logical relations and monadic lifting in type-and-effect system semantics
- Signature restriction for polymorphic algebraic effects
- Modular verification of programs with effects and effect handlers in Coq
- Introducing a calculus of effects and handlers for natural language semantics
- Applicative programming with effects
- Automated temporal verification for algebraic effects
- Verifying an Effect-Handler-Based Define-By-Run Reverse-Mode AD Library
- An effect system for algebraic effects and handlers
- Eff
- Handling algebraic effects
- Do be do be do
- Higher-order asynchronous effects
- Efficient algebraic effect handlers for Prolog
- Understanding algebraic effect handlers via delimited control operators
- Validating Brouwer's continuity principle for numbers using named exceptions
- Interactive programming in Agda -- objects and graphical user interfaces
- An introduction to algebraic effects and handlers (invited tutorial paper)
- Latent Effects for Reusable Language Components
- Modular verification of programs with effects and effects handlers
- Explicit effect subtyping
- Turing-Completeness Totally Free
- Handlers of Algebraic Effects
- scientific article; zbMATH DE number 7566056 (Why is no real title available?)
- Combining predicate transformer semantics for effects: a case study in parsing regular languages
- Continuation passing style for effect handlers
- Doo bee doo bee doo
- Effect handlers via generalised continuations
- Local algebraic effect theories
- An effect system for algebraic effects and handlers
- Programming and reasoning with algebraic effects and dependent types
- No value restriction is needed for algebraic effects and handlers
This page was built for publication: Programming with algebraic effects and handlers
Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q478396)