MiniMAO1: Investigating the Semantics of Proceed







Deposit Papers 


Clifton, Curtis and Leavens, Gary T. (2005) MiniMAO1: Investigating the Semantics of Proceed. Technical Report 05-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.


This paper describes MiniMAO1, a core aspect-oriented calculus. Unlike previous aspectoriented calculi, it allows around advice to change the target object of an advised operation before proceeding. MiniMAO1 accurately models the ways AspectJ allows changing the target object, e.g., at call join points. Practical uses for changing the target object using advice include proxies and other wrapper objects. In addition to accurate modeling of bindings for around advice, MiniMAO1 has several other features that make it suitable for the study of aspect-oriented mechanisms, such as those found in AspectJ. Like AspectJ, the calculus consists of an imperative, object-oriented base language plus aspect-oriented extensions. MiniMAO1 has a sound static type system, facilitated by a slightly different form of proceed than in AspectJ. This paper gives an operational semantics, type system, and proof of soundness for MiniMAO1.

Keywords:MiniMAO calculus, aspect-oriented programming, AspectJ, advice, proceed, target
Subjects:Software: PROGRAMMING LANGUAGES: Formal Definitions and Theory (D.2.1, F.3.1-2, F.4.2-3)
Software: PROGRAMMING LANGUAGES: Language Classifications
Software: PROGRAMMING LANGUAGES: Language Constructs and Features (E.2)
ID code:00000352
Deposited by:Curtis Clifton on 24 January 2005

Available Versions of This Paper

Contact site administrator at: