Gordon D Plotkin ; Matija Pretnar - Handling Algebraic Effects

lmcs:705 - Logical Methods in Computer Science, December 17, 2013, Volume 9, Issue 4 - https://doi.org/10.2168/LMCS-9(4:23)2013
Handling Algebraic EffectsArticle

Authors: Gordon D Plotkin ; Matija Pretnar ORCID

    Algebraic effects are computational effects that can be represented by an equational theory whose operations produce the effects at hand. The free model of this theory induces the expected computational monad for the corresponding effect. Algebraic effects include exceptions, state, nondeterminism, interactive input/output, and time, and their combinations. Exception handling, however, has so far received no algebraic treatment. We present such a treatment, in which each handler yields a model of the theory for exceptions, and each handling construct yields the homomorphism induced by the universal property of the free model. We further generalise exception handlers to arbitrary algebraic effects. The resulting programming construct includes many previously unrelated examples from both theory and practice, including relabelling and restriction in Milner's CCS, timeout, rollback, and stream redirection.


    Volume: Volume 9, Issue 4
    Published on: December 17, 2013
    Imported on: October 20, 2011
    Keywords: Computer Science - Logic in Computer Science,Computer Science - Programming Languages

    Classifications

    90 Documents citing this article

    Consultation statistics

    This page has been seen 4017 times.
    This article's PDF has been downloaded 1098 times.