Learn More
This paper describes LPS, a Language Prototyping System that facilitates the modular development of interpreters from semantic building blocks. The system is based on the integration of ideas from Modular Monadic Semantics and Generic Programming. To define a new programming language, the abstract syntax is described as the fixpoint of non-recursive pattern(More)
Modular monadic semantics allows the modular development of interpreters from semantic specifications be means of monad transformers. In this paper we show how to structure semantic descriptions using folds and monadic folds over functors that express the shape of the programming language. A given language can be extended combining those functors without(More)