30 Sep 2015

Aspect Oriented Programming is Quantification and Obliviousness

local copy

… event-based, publish and subscribe is AOP. … separate concerns can be realized by subscribing to the events of interest to those concerns.

2 Local and unitary statements

… a strict correspondence between the program text and the execution pattern. … each programming language statement was both unitary and local — unitary in that it ended up having effect in precisely one place in the elaborated program, and local in that it is almost always proximate to its neighboring statements.

Type declarations can have nonlocal and quantified effects such as type-coercion and type consistency checks. Types … are thus an example of built-in separate concern.

The first exceptions to locality were subprograms (i.e., procedures, …) … enabling abstracting out some behavior to someplace else. … The program was still unitary.

Requiring cooperation is not good enough. …

AOP can be understood as the desire to make quantified statements about the behavior of programs, and to have these quantifications hold over programs written by oblivious programmers.

6 Closing Remarks