Modular Reasoning in Aspect-Oriented Languages

2015-07-09T09:59:32Z (GMT) by Tim Molderez Dirk Janssens

Aspect-oriented programming aims to separate crosscutting concerns into their own modules, called aspects. While aspects can achieve this at a syntactic level, this is done at the expense of modular reasoning: Whenever a method call is made, all aspects should be inspected to determine whether or not that call's behaviour will be affected by an aspect. To restore modular reasoning, we present a two-part approach that does not affect the programming language itself, but rather governs how to write contracts for aspect-oriented programs.

Presented at SATToSE'15.