## Lifting of Operations in Modular Monadic Semantics (2009)

Citations: | 3 - 0 self |

### BibTeX

@MISC{Jaskelioff09liftingof,

author = {Mauro Jaskelioff},

title = {Lifting of Operations in Modular Monadic Semantics},

year = {2009}

}

### OpenURL

### 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 modular 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. i No hay ejercicio intelectual que no sea finalmente inútil. Una doctrina es al principio una descripción verosímil del universo; giran los años y es un mero capítulo—cuando no un párrafo o un nombre—de la historia de la filosofía. There is no exercise of the intellect which is not, in the final analysis, useless. A philosophical doctrine begins as a plausible description of the universe; with the passage of the years it becomes a mere chapter—if not a paragraph or a name—in the history of philosophy.