MiniMAO1 : An imperative core language for studying aspect-oriented reasoning
详细信息    查看全文
文摘
This paper describes MiniMAO1, a core aspect-oriented language. Unlike previous aspect-oriented calculi and core languages, MiniMAO1allows <tt>aroundtt> advice to change the target object of an advised operation before proceeding. MiniMAO1accurately models the ways AspectJ allows changing the target object, e.g., at <tt>calltt> join points. Practical uses for changing the target object using advice include proxies and other wrapper objects.

MiniMAO1was designed to serve as a core language for studying modular specification and verification in the aspect-oriented paradigm. To this end MiniMAO1

t>

• has an imperative, reference-based semantics,t>t>

• models the control-flow effects of changing target object bindings with advice, andt>t>

• has a safe static type system.t>

The first two features make MiniMAO1 suitable for the study of aspect-oriented mechanisms, such as those found in AspectJ. These features are important for studying the interaction of aspect-oriented language features with modular specification and verification. A statically type-safe language is also important for such research. AspectJ does not have a safe static type system. To achieve static type safety MiniMAO1uses a slightly different form of <tt>proceedtt> and advice binding than in AspectJ. These changes are sufficient for static type safety, but we do not claim that they are necessary; a less restrictive type system might suffice.

This paper gives an operational semantics, type system, and proof of soundness for MiniMAO1.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700