Lifting of operations in modular monadic semantics

Jaskelioff, Mauro Javier (2009) Lifting of operations in modular monadic semantics. PhD thesis, University of Nottingham.

[img]
Preview
PDF (PhD Thesis) - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
Download (694kB) | Preview

Abstract

Monads have become a fundamental tool for structuring denotational semantics and programs by abstracting a wide variety of computational features such as side-effects, input/output, exceptions, continuations and non-determinism. In this setting, the notion of a monad is equipped with operations that allow programmers to manipulate these computational effects. For example, a monad for side-effects is equipped with operations for setting and reading the state, and a monad for exceptions is equipped with operations for throwing and handling exceptions.

When several effects are involved, one can employ the incremental approach to mod- ular monadic semantics, which uses monad transformers to build up the desired monad one effect at a time. However, a limitation of this approach is that the effect-manipulating operations need to be manually lifted to the resulting monad, and consequently, the lifted operations are non-uniform. Moreover, the number of liftings needed in a system grows as the product of the number of monad transformers and operations involved.

This dissertation proposes a theory of uniform lifting of operations that extends the incremental approach to modular monadic semantics with a principled technique for lifting operations. Moreover the theory is generalized from monads to monoids in a monoidal category, making it possible to apply it to structures other than monads.

The extended theory is taken to practice with the implementation of a new extensible monad transformer library in Haskell, and with the use of modular monadic semantics to obtain modular operational semantics.

Item Type: Thesis (University of Nottingham only) (PhD)
Supervisors: Hutton, G.M.
Ghani, N.
Keywords: monadic semantics, monads, programming, computers, computer science
Subjects: Q Science > QA Mathematics > QA 75 Electronic computers. Computer science
Faculties/Schools: UK Campuses > Faculty of Science > School of Computer Science
Item ID: 11226
Depositing User: EP, Services
Date Deposited: 23 Apr 2010 08:12
Last Modified: 19 Oct 2017 11:42
URI: https://eprints.nottingham.ac.uk/id/eprint/11226

Actions (Archive Staff Only)

Edit View Edit View