Reference. Parameterised notions of computation

Robert Atkey · · effects · PDF · DOI · pldb
Moggi’s Computational Monads and Power et al .‘s equivalent notion of Freyd category have captured a large range of computational effects present in programming languages. Examples include non-termination, non-determinism, exceptions, continuations, side effects and input/output. We present generalisations of both computational monads and Freyd categories, which we call parameterised monads and parameterised Freyd categories, that also capture computational effects with parameters. Examples of such are composable continuations, side effects where the type of the state varies and input/output where the range of inputs and outputs varies. By considering structured parameterisation also, we extend the range of effects to cover separated side effects and multiple independent streams of I/O. We also present two typed λ-calculi that soundly and completely model our categorical definitions – with and without symmetric monoidal parameterisation – and act as prototypical languages with parameterised effects.

Cite

Cite as @atkey-2009-parameterised (helia, typst) · \cite{atkey-2009-parameterised} (LaTeX)
BibTeX
bibtex · 1 line
@article{atkey-2009-parameterised, title={Parameterised notions of computation}, volume={19}, ISSN={1469-7653}, url={http://dx.doi.org/10.1017/s095679680900728x}, DOI={10.1017/s095679680900728x}, number={3-4}, journal={Journal of Functional Programming}, publisher={Cambridge University Press (CUP)}, author={ATKEY, ROBERT}, year={2009}, month=July, pages={335–376} }
hayagriva YAML (typst)
yaml · 14 lines
atkey-2009-parameterised:
  type: article
  title: Parameterised notions of computation
  author: Atkey, Robert
  date: 2009-07
  page-range: 335-376
  serial-number:
    doi: 10.1017/s095679680900728x
  parent:
    type: periodical
    title: Journal of Functional Programming
    publisher: Cambridge University Press (CUP)
    issue: 3–4
    volume: 19
Cited by (5)

Modular models of monoids with operations by lifting functors along fibrations yang-2026-modular

Inspired by Plotkin and Power’s algebraic treatment of computational effects and the principle of notions of computations as monoids, we propose a categorical framework for equational theories and models of monoids equipped with operations. This framework generalises Plotkin and Power’s algebraic treatment of effectful operations taking or returning values as input or output to operations that may take or return computations as input or output. Additionally, to give semantic models of computational effects in a modular way, we introduce a formal theory of modular constructions of algebraic structures based on the framework of lifting functors along fibrations.
PDF · DOI · pldb

Modular Models of Monoids with Operations yang-2023-modular

Inspired by algebraic effects and the principle of notions of computations as monoids, we study a categorical framework for equational theories and models of monoids equipped with operations. The framework covers not only algebraic operations but also scoped and variable-binding operations. Appealingly, in this framework both theories and models can be modularly composed. Technically, a general monoid-theory correspondence is shown, saying that the category of theories of algebraic operations is equivalent to the category of monoids. Moreover, more complex forms of operations can be coreflected into algebraic operations, in a way that preserves initial algebras. On models, we introduce modular models of a theory, which can interpret abstract syntax in the presence of other operations. We show constructions of modular models (i) from monoid transformers, (ii) from free algebras, (iii) by composition, and (iv) in symmetric monoidal categories.
PDF · DOI · pldb

On the expressive power of user-defined effects: Effect handlers, monadic reflection, delimited control forster-2019-on

We compare the expressive power of three programming abstractions for user-defined computational effects: Plotkin and Pretnar’s effect handlers, Filinski’s monadic reflection, and delimited control. This comparison allows a precise discussion about the relative expressiveness of each programming abstraction. It also demonstrates the sensitivity of the relative expressiveness of user-defined effects to seemingly orthogonal language features. We present three calculi, one per abstraction, extending Levy’s call-by-push-value. For each calculus, we present syntax, operational semantics, a natural type-and-effect system, and, for effect handlers and monadic reflection, a set-theoretic denotational semantics. We establish their basic metatheoretic properties: safety, termination, and, where applicable, soundness and adequacy. Using Felleisen’s notion of a macro translation, we show that these abstractions can macro express each other, and show which translations preserve typeability. We use the adequate finitary set-theoretic denotational semantics for the monadic calculus to show that effect handlers cannot be macro expressed while preserving typeability either by monadic reflection or by delimited control. Our argument fails with simple changes to the type system such as polymorphism and inductive types. We supplement our development with a mechanised Abella formalisation.
PDF · DOI · pldb

A Coq Library For Internal Verification of Running-Times mccarthy_etal_2016

DOI

Algebraic foundations for effect-dependent optimisations kammar-2012-algebraic

PDF · DOI · pldb
Cites 37 works (1 here)
With notes (1)

Linear logic girard_linear_1987

The familiar connective of negation is broken into two operations: linear negation which is the purely negative part of negation and the modality “of course” which has the meaning of a reaffirmation. Following this basic discovery, a completely new approach to the whole area between constructive logics and programmation is initiated.
DOI
External (36)
atkey-2009-parameterised reference entries/refs/atkey-2009-parameterised/atkey-2009-parameterised.hel