Nu: Towards an Aspect-Oriented Invocation Mechanism
By: Hridesh Rajan, Robert Dyer, Harish Narayanappa, and Youssef Hanna
Download PaperAbstract
The contribution of this work is the design, implementation and evaluation of a new aspect-oriented invocation mechanism for preserving design modularity in object code. We call our mechanism Bind. We make three basic claims. First, it is feasible to realize a programming model that supports Bind to preserve design modularity in object code. Second, the new invocation mechanism further improves the conceptual integrity of the aspect-oriented programming models by allowing advising and runtime properties of aspect-like constructs to be modeled as simple combinations of invocation primitives as opposed to new language constructs. Third, it brings new possibility for structuring aspect-oriented systems, removing the commitment to a single aspect-language model, and expanding the program design space to include arbitrary combinations of language models and advising structures. To support these claims, we present the design and implementation of Nu, a programming model based on the .NET Framework that supports Bind as an invocation mechanism. We show that Nu supports aspect-oriented program designs where multiple aspect-language models can be emulated using Bind, and used in arbitrary combinations without compromising the design modularity in the object code.
ACM Reference
Rajan, H. et al. 2006. Nu: Towards an AspectOriented Invocation Mechanism. Technical Report #414. Iowa State University, Dept. of Computer Science.
BibTeX Reference
@techreport{rajan2006nu,
title = {Nu: Towards an AspectOriented Invocation Mechanism},
author = {Rajan, Hridesh and Dyer, Robert and Narayanappa, Harish and Hanna, Youssef},
year = {2006},
institution = {Iowa State University, Dept. of Computer Science},
number = {414},
abstract = {
The contribution of this work is the design, implementation and evaluation of
a new aspect-oriented invocation mechanism for preserving design modularity in
object code. We call our mechanism Bind. We make three basic claims. First, it
is feasible to realize a programming model that supports Bind to preserve
design modularity in object code. Second, the new invocation mechanism further
improves the conceptual integrity of the aspect-oriented programming models by
allowing advising and runtime properties of aspect-like constructs to be
modeled as simple combinations of invocation primitives as opposed to new
language constructs. Third, it brings new possibility for structuring
aspect-oriented systems, removing the commitment to a single aspect-language
model, and expanding the program design space to include arbitrary
combinations of language models and advising structures. To support these
claims, we present the design and implementation of Nu, a programming model
based on the .NET Framework that supports Bind as an invocation mechanism. We
show that Nu supports aspect-oriented program designs where multiple
aspect-language models can be emulated using Bind, and used in arbitrary
combinations without compromising the design modularity in the object code.
}
}