Studies of Aspect-Oriented Programming (AOP) usually focus on a language in which a specific aspect extension is integrated with a base language. Languages specified in this manner have a fixed, non-extensible AOP functionality. This paper argues the …
Adaptive Programming (AP) is a programming technique for developing concern shy programs. AP can be viewed as a special case of Aspect-Oriented Programming (AOP), and vice-versa. In this book chapter, we examine the close relationship between AP and …
AOP is often perceived as a second class reflective mechanism, whereas reflection in OOP is considered first class. However, perceiving AOP as a first class language mechanism is conductive to developing a general AOP model, which can be a basis for …
Design by Contract (DBC) and runtime enforcement of program assertions enables the construction of more robust software. It also enables the assignment of blame in error reporting. As of yet, no AOP implementation for the provision of DBC exists. We …
Software understanding for documentation, maintenance or evolution is one of the longest-standing problems in Computer Science. The use of 'high-level' programming paradigms and object-oriented languages helps, but fundamentally remains far from …