A case study of Separation of Concerns in Compiler Construction in JastAdd II
In: Proceedings of the Third AOSD workshop on Aspect, Components, and Patterns for Infrastructure Software (ACP4IS), 2004.
Authors: Torbjörn Ekman
Abstract
This paper presents a case study of separation of concerns in compiler construction using the JastAdd II compiler compiler. A domain-specific specification language, Rewritable Reference Attributed Grammars (ReRAGs), is combined with Java to implement compilers in a high-level declarative and modular fashion. Three synergistic mechanisms for separations of concerns are described: inheritance for model modularisation, aspects for cross-cutting concerns, and rewrites that allow computations to be expressed on the most suitable model. Each technique is presented using a series of simplified examples from static semantic analysis for the Java programming language.
(PDF)
BIBTEX:
@inproceedings{acp4is,
author = "Torbj{\"o}rn Ekman",
title = "A case study of {S}eparation of {C}oncerns in {C}ompiler {C}onstruction using {J}ast{A}dd {II}",
booktitle ="Proceedings of the {T}hird {AOSD} workshop on {A}spects, {C}omponents, and {P}atterns for {I}nfrastructure {S}oftware ({ACP4IS})",
year = {2004}
}