Algebraic effects

Topic | v1 | created by jjones |

Algebraic effects are an approach to computational effects based on a premise that impure behaviour arises from a set of operations such as get & set for mutable store, read & print for interactive input & output, or raise for exceptions. This naturally gives rise to handlers not only of exceptions, but of any other effect, yielding a novel concept that, amongst others, can capture stream redirection, backtracking, co-operative multi-threading, and delimited continuations.


e.g. Unison Abilities

Unison's type system tracks which functions can do I/O, and the same language feature, called abiliti...

subtopic of Functional programming

In computer science, functional programming is a programming paradigm where programs are constructed...

Edit details Edit relations Attach new author Attach new topic Attach new resource

treated in Algebraic Effects for the Rest of Us

9.0 rating 2.0 level 8.0 clarity 4.0 background – 1 rating

Have you heard about algebraic effects?

treated in An Introduction to Algebraic Effects and Handlers

9.0 rating 5.0 level 7.0 clarity 3.0 background – 1 rating

This paper is a tutorial on algebraic effects and handlers. In it, we explain what algebraic effects...

mentioned in Immutability is not enough

As I’ve gotten more experience working with immutable data structures, I’ve found that they can be be...