JUCS - Journal of Universal Computer Science 14(21): 3517-3533, doi: 10.3217/jucs-014-21-3517
A Lightweight and Extensible AspectJ Implementation
expand article infoRodolfo Toledo, Éric Tanter
‡ University of Chile, Santiago, Chile
Open Access
Abstract
Extending AspectJ to experiment with new language features can be cumbersome, even with an extensible implementation. Often, a language designer only needs a rapid prototyping environment, but has to deal with a full compiler infrastructure, and must address low-level implementation issues. This work completes a lightweight extensible implementation of AspectJ with a declarative assimilation layer based on Stratego. This layer brings together an extensible syntax definition of AspectJ and the core semantics provided by the Reflex AOP kernel. Using this implementation, language extensions are defined using declarative high-level constructs, significantly reducing the cost of the extension process.
Keywords
aspect-oriented programming, spectJ, extensible implementation