Parameterised notions of computation

Atkey, Robert; (2006) Parameterised notions of computation. In: Workshop on Mathematically Structured Functional Programming (MSFP 2006) (MSFP). Electronic Workshops in Computing . British Computer Society, London, pp. 1-15. (https://doi.org/10.14236/ewic/MSFP2006.5)

[thumbnail of Atkey-MSFP-2006-Parameterised-notions-of-computation]
Preview
Text. Filename: Atkey_MSFP_2006_Parameterised_notions_of_computation.pdf
Accepted Author Manuscript

Download (241kB)| Preview

Abstract

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 such as exceptions, side-effects, input/output and continuations. We present generalisations of both constructs, 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 also considering monoidal parameterisation, 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 monoidal parameterisation — and act as prototypical languages with parameterised effects.