Applying Translucid Contracts for Modular Reasoning About Aspect and Object Oriented Events
By: Mehdi Bagherzadeh, Gary T. Leavens, and Robert Dyer
Download PaperAbstract
The Implicit Invocation (II) architectural style improves modularity and is promoted by aspect-oriented (AO) languages and design patterns like Observer. However, it makes modular reasoning difficult, especially when reasoning about control effects of the advised code (subject). Our language Ptolemy, which was inspired by II languages, uses translucid contracts for modular reasoning about the control effects; however, this reasoning relies on Ptolemy’s event model, which has explicit event announcement and declared event types. In this paper we investigate how to apply translucid contracts to reasoning about events in other AO languages and even non-AO languages like C#.
ACM Reference
Bagherzadeh, M. et al. 2011. Applying Translucid Contracts for Modular Reasoning About Aspect and Object Oriented Events. FOAL ’11: Workshop on Foundations of Aspect-Oriented Languages workshop (Mar. 2011).
BibTeX Reference
@inproceedings{bagherzadeh2011applying,
author = {Mehdi Bagherzadeh and Gary T. Leavens and Robert Dyer},
title = {Applying Translucid Contracts for Modular Reasoning About Aspect and Object Oriented Events},
booktitle = {FOAL '11: Workshop on Foundations of Aspect-Oriented Languages workshop},
location = {Porto de Galinhas, Pernambuco, Brazil},
month = {March},
year = {2011},
entrysubtype = {workshop},
abstract = {
The Implicit Invocation (II) architectural style improves modularity and is
promoted by aspect-oriented (AO) languages and design patterns like Observer.
However, it makes modular reasoning difficult, especially when reasoning about
control effects of the advised code (subject). Our language Ptolemy, which was
inspired by II languages, uses translucid contracts for modular reasoning
about the control effects; however, this reasoning relies on Ptolemy's event
model, which has explicit event announcement and declared event types. In this
paper we investigate how to apply translucid contracts to reasoning about
events in other AO languages and even non-AO languages like C#.
}
}