Sciweavers

AOSD
2008
ACM

Modularity first: a case for mixing AOP and attribute grammars

14 years 2 months ago
Modularity first: a case for mixing AOP and attribute grammars
We have reimplemented the frontend of the extensible AspectBench Compiler for AspectJ, using the aspect-oriented meta-compiler JastAdd. The original frontend was purely object-oriented. Each frontend extends Java with AspectJ and an additional set of pointcuts in a modular fashion. In this paper we give a detailed comparison of both approaches and show a number of advantages of using JastAdd: the implementation is half the size, twice as fast, concerns are better localised, extensions are composable, and computations are automatically scheduled. JastAdd provides a very constrained form of static AOP where only inter-type declarations and method execution interception are supported. However, additional modularisation mechanisms from the compiler construction community are supported in the form of demand-driven evaluation and attribute grammars. Our implementation would not have benefited from a richer pointcut language, while both demand-drive evaluation and declarative attributes were...
Pavel Avgustinov, Torbjörn Ekman, Julian Tibb
Added 12 Oct 2010
Updated 12 Oct 2010
Type Conference
Year 2008
Where AOSD
Authors Pavel Avgustinov, Torbjörn Ekman, Julian Tibble
Comments (0)