European Summary of AOP article focusses on Adaptive Programming.
Gregor Kiczales' insight is that "better separation of concerns" is an important driving force behind better programming languages. Numerous techniques have been invented to improve separation of concerns and to control tangling. In Gregor's view, AOP is one technique to reduce tangling namely tangling that comes from ad-hoc implementation of crosscutting concerns.
The article refers to Northeastern University twice:
"The idea of aspects has been around for many years and with many different names. It's called "adaptive programming" at Northeastern University, "subject-oriented programming" at IBM, ... There is a table entitled: "Others Untangling Code" Organization Project Mehmet Aksit Composition Filters (University of Twente) Karl Lieberherr Adaptive Programming (Northeastern University) IBM Research Hyper/J System for Java (York Town Heights) Mira Mezini Enhancing modularity and (University of Siegen) reusability of A-O softwareAs is often the case with technical innovation, there were instances of systems that could be called AOP before the idea of support for crosscutting modularity was itself explicit. One of these technologies was the Demeter work at NEU. We have focussed early on abstraction mechanisms for expressing certain crosscutting concerns with the goal to reduce the tangling in ad-hoc implementations of the crosscutting concerns. We used propagation patterns to express behavior that has a traversal component that cuts across multiple classes. Ad-hoc implementations of those behaviors lead to a lot of tangling. Propagation patterns live on in DJ, a 100% pure Java implementation of Adaptive Programming. We used synchronization patterns to express synchronization behavior that is of a crosscutting nature. We introduced (enhanced) collaborations and adapters (also called aspectual components and AP&PC) to express crosscutting concerns in general. A collaboration is an abstraction of a crosscutting concern and an adapter describes an instantiation of such a concern. To simplify the implementation of the synchronization aspect COOL and remote invocation or data transfer aspect RIDL in DemeterJ, we introduced a simple weaving language for DemeterJ.
It should be noted that, contrary to the MIT article, also at Northeastern we have adopted the Xerox PARC terminology back in 1996. We view Adaptive Programming as a general technique for creating robustness to changes in an aspect. The robustness issue has been very important to us and we have introduced the concept of a "robust aspect = collaboration" as a unit while Gregor Kiczales first only focussed on the notion of an aspect. David Lorenz' view on Aspect-Oriented and Adaptive Programming
The following link gives further information on AOP and AP: Connection to Aspect-Oriented Programming from Xerox PARC