Nordic Journal of Computing Bibliography

Jose Emilio Labra Gayo, Juan Manuel Cueva Lovelle, Maria Cándida Luengo Díez, and Agustín Cernuda del Río. Modular Development of Interpreters from Semantic Building Blocks. Nordic Journal of Computing, 8(3):391-407, Fall 2001.

We present an integration of modular monadic semantics and generic programming concepts that facilitates the modular development of interpreters. Using modular monadic semantics, the computational structure is obtained as the composition of several monad transformers where each monad transformer adds a new notion of computation. Using generic programming, it is possible to divide the recursive structure of the abstract syntax in several non-recursive pattern functors. For each functor F, it is possible to define an F-algebra over the computational structure. In this way, an interpreter is automatically obtained as a catamorphism.

In this paper we show that it is also possible to use monadic catamorphisms and to combine them with catamorphisms allowing the separation between recursive evaluation from semantic specification. As an example, we define the modular specification of a simple functional programming language with imperative features.

Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors; F.3.2 [Logics and Meanings of Programs]: Semantics of Programming Languages

Additional Key Words and Phrases: modular monadic semantics, programming languages, interpreters

Selected references


  • Nordic Journal of Computing homepage
  • Bibliography top level
  • Nordic Journal of Computing Author Index
  • Search the HBP database