kirancodes.me
To Proof Maintenance & Beyond!

Modular and generic programming with interpreterlib

Philip Weaver, Garrin Kimmell, Nicolas Frisby, Perry Alexander

Abstract

Modular monadic semantics (MMS) is a well-known technique for structuring modular denotational semantic definitions. Families of language constructs are independently defined using syntactic functors and semantic algebras that can be combined in a mix-and-match fashion to create complete language definitions. We introduce InterpreterLib, a Haskell library that implements and extends MMS techniques for writing composable analyses. In addition to modular analyses composition, InterpreterLib provides algebra combinators, explicit algebra semantics, preprocessors for boiler plate generation and generic programming techniques adapted to language analysis. The key benefits of these features are reliability, increased code reuse via modularity and the ability to rapidly retarget component analyses.

BibTeX
@inproceedings{Weaver-al:ASE07,
  author    = {Philip Weaver and
               Garrin Kimmell and
               Nicolas Frisby and
               Perry Alexander},
  title     = {Modular and generic programming with interpreterlib},
  booktitle = {ASE},
  pages     = {473--476},
  publisher = {{ACM}},
  year      = {2007},
}

Related papers