There are two important points of view on inclusion (subtype) polymorphism in object-oriented programs, namely polymorphic access and dynamic dispatch. These features are essential for object-orientation, 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. Aspectual polymorphism can make aspects more expressive and reusable across programs, yet keep them safe.
|Place of Publication||Boston, MA 02115|
|State||Published - 1 Sep 2001|