Aspect-Oriented Software Development with Use Cases

Chapter 2. Aspect-Oriented Programming Is Quantification and Obliviousness

ROBERT E. FILMAN AND DANIEL P. FRIEDMAN

We argue that the distinguishing characteristic of aspect-oriented programming (AOP) languages is that they allow programming by making quantified programmatic assertions over programs that lack local notation indicating the invocation of these assertions. This suggests that AOP systems can be analyzed with respect to three critical dimensions: the kinds of quantifications allowed, the nature of the interactions that can be asserted, and the mechanism for combining base-level actions with asserted actions. Consequences of this perspective are the recognition that certain systems are not AOP and that some mechanisms are meta-AOP: They are sufficiently expressive to allow straightforwardly programming an AOP system within them.

Категории