Obliviousness, Modular Reasoning, and the Behavioral Subtyping Analogy

Thumbnail Image
Date
2003-03-01
Authors
Clifton, Curtis
Leavens, Gary
Major Professor
Advisor
Committee Member
Journal Title
Journal ISSN
Volume Title
Publisher
Authors
Research Projects
Organizational Units
Organizational Unit
Journal Issue
Is Version Of
Versions
Series
Department
Computer Science
Abstract

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 AspectJ programs.

Comments
Description
Keywords
Citation
DOI
Source
Copyright
Collections