MiniMAO1: Investigating the Semantics of Proceed







Deposit Papers 


Clifton, Curtis and Leavens, Gary T. (2005) MiniMAO1: Investigating the Semantics of Proceed. Technical Report 05-01b, Dept. of Computer Science, Iowa State University.

Full text available as:Adobe PDF

This is the latest version of this eprint.


This paper describes MiniMAO1, a core aspect-oriented calculus. Unlike previous aspect-oriented 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:00000362
Deposited by:Curtis Clifton on 16 March 2005

Available Versions of This Paper

Contact site administrator at: