Next: Introduction
Aspects and Polymorphism in AspectJ
Erik Ernst
Dept. of Computer Science,
University of Aarhus
Åbogade 34, DK-8200 Århus N
Denmark
David H. Lorenz
College of Computer & Information Science,
Northeastern University
360 Huntington Avenue 161 CN
Boston, Massachusetts 02115 USA
Supported in part by the National
Science Foundation (NSF) under Grant No. CCR-0098643
and CCR-0204432, and by the Institute
for Complex Scientific Software at Northeastern University.
Abstract:
There are two important points of view on inclusion or subtype
polymorphism in object-oriented programs,
namely polymorphic access
and dynamic dispatch. These features are essential for
object-oriented programming,
and it is worthwhile to consider whether they
are supported in aspect-oriented programming (AOP). In AOP,
pieces of crosscutting behavior are extracted from the base code and
localized in aspects, losing as a result their polymorphic
capabilities while introducing new and unexplored issues.
In this paper, we explore what kinds of polymorphism AOP languages
should support, using AspectJ as the basis for the presentation.
The results are not exclusive to AspectJ--aspectual polymorphism
may make aspects in any comparable AOSD language
more expressive and reusable across programs, while preserving safety.
Next: Introduction
David H. Lorenz
2003-01-15