Clifton, Curtis and Leavens, Gary T. (2002) Observers and Assistants: A Proposal for Modular Aspect-Oriented Reasoning. Technical Report 02-04, Department of Computer Science, Iowa State University.
There is a later version of this eprint available: Click here to view it.
In general, aspect-oriented programs require a whole-program analysis to understand the semantics of a single method invocation. This property makes reasoning difficult, impeding maintenance efforts, contrary to a stated goal of aspect-oriented programming. We propose some simple modifications to AspectJ that permit modular reasoning. This eliminates the need for whole-program analysis and makes code easier to understand and maintain.
|Keywords:||Observers, assistants, aspect-oriented programming languages, modular reasoning, specification, composition, AspectJ language, Java language, JML language, MultiJava language.|
|Comments:||2002 CR Categories: D.3.3 [Programming Languages] Language Constructs and Features — classes and objects, control structures, inheritance, modules, packages, procedures, functions, and subroutines, advice, observers, assistants, aspects; D.3.2 [Programming Languages] Language Classifications — object-oriented languages, multiparadigm languages, AspectJ, JML; D.1.5 [Programming Techniques] Object-oriented programming — aspect-oriented programming; D.3.1 [Programming Languages] Formal Definitions and Theory — semantics.|
|Subjects:||Software: PROGRAMMING TECHNIQUES (E): Object-oriented Programming|
Software: PROGRAMMING LANGUAGES: Language Classifications
Software: PROGRAMMING LANGUAGES: Language Constructs and Features (E.2)
|Deposited by:||Curtis Clifton on 04 March 2002|
|Alternative Locations:||http://www.cs.iastate.edu/~cclifton/multijava/papers/TR02-04.pdf |
Available Versions of This Paper
- Observers and Assistants: A Proposal for Modular Aspect-Oriented Reasoning (deposited 04 March 2002) [Currently displayed]
Contact site administrator at: email@example.com