Chapter

Implementation and Application of Functional Languages

Volume 7257 of the series Lecture Notes in Computer Science pp 85-99

Generic Monadic Constructs for Embedded Languages

  • Anders PerssonAffiliated withLancaster UniversityChalmers University of TechnologyEricsson
  • , Emil AxelssonAffiliated withLancaster UniversityChalmers University of Technology
  • , Josef SvenningssonAffiliated withLancaster UniversityChalmers University of Technology

* Final gross prices may vary according to local VAT.

Get Access

Abstract

We present a library of generic monadic constructs for embedded languages. It is an extension of Syntactic, a Haskell library for defining and processing generic abstract syntax. Until now, Syntactic has been mostly suited to implement languages based on pure, side effect free, expressions. The presented extension allows the pure expressions to also contain controlled side effects, enabling the representation of expressions that rely on destructive updates for efficiency. We demonstrate the usefulness of the extension by giving examples from the embedded language Feldspar which is implemented using Syntactic.