Obliviousness, Modular Reasoning, and the Behavioral Subtyping Analogy







Deposit Papers 


Clifton, Curtis and Leavens, Gary T. (2003) Obliviousness, Modular Reasoning, and the Behavioral Subtyping Analogy. Technical Report 03-01, Dept. of Computer Science, Iowa State University.

Full text available as:Adobe PDF

There is a later version of this eprint available: Click here to view it.


The obliviousness property of AspectJ conflicts with the ability to reason about an AspectJ program in a modular fashion. This makes debugging and maintenance difficult. In object-oriented programming, the discipline of behavioral subtyping allows one to reason about programs modularly, despite the somewhat oblivious nature of dynamic binding; however, it is not clear what discipline would help AspectJ programmers obtain modular reasoning. We describe this problem in detail, and sketch a solution that allows programmers to tell both “superimposition” and “evolution” stories in their aspect-oriented programs.

Keywords:Spectators, assistants, aspect-oriented programming, modular reasoning, behavioral subtyping, obliviousness, AspectJ language
Subjects:Software: PROGRAMMING TECHNIQUES (E): Object-oriented Programming
Software: PROGRAMMING LANGUAGES: Language Classifications
Software: PROGRAMMING LANGUAGES: Language Constructs and Features (E.2)
ID code:00000296
Deposited by:Curtis Clifton on 27 January 2003
Alternative Locations:

Available Versions of This Paper

Contact site administrator at: