Department of Computer Science

Laboratory for Software Design

The research and educational activities described on these pages has been supported in part by the US National Science Foundation (NSF) under grants CNS-15-13263, CCF-14-23370, CCF-13-49153, CCF-11-17937, CCF-10-17334, CNS-07-09217, CNS-06-27354, and a CAREER award 08-46059.

Got a question?

Got a question or comment? Contact us at (515) 294-6168 or

Applying Translucid Contracts for Modular Reasoning About Aspect and Object Oriented Events

Mehdi Bagherzadeh, Gary T. Leavens and Robert Dyer


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#.

Bibliographic Information

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},

Most recent version: [PDF]