Building Compilers by Combining Algebras

G. Kimmell, E. Komp and P. Alexander, "Building Compilers by Combining Algebras," Proceedings of the IEEE Engineering of Computer-Based Systems Symposium and Workshop (ECBS'05), Washington, DC, April 4-7, 2005.

Embedded systems present a wide variety of challenges for developers
of language tools. Verification of correctness, flexibility for adding new
language features, and retargeting new architectures all present significant problems when developing a compiler for embedded systems. In this
paper we present a domain-specific language based on modular monadic
semantics which addresses many of these challenges.
Despite the embedded systems emphasis in the abstract this paper actually presents a fairly general approach to combinator-based compilation. The authors note that their approach should speed the development of compilers, interpreters, and type-checkers, while also making verification easier.

It's probably worth noting here that this is not a paper about parser combinators, but rather presents a flexible, algebra-based approach to generating code from an AST. The authors claim that things like typechecking and optimizations can be accomplished simply by changing the carrier set of the algebra.