10. Wikipedia In computing, aspect-oriented programming (AOP) is a programming paradigm which isolates secondary or supporting functions from the main program's business logic.
11. AOP is a step to AOSD It aims to increase modularity by allowing the separation of cross-cutting concerns, forming a basis for aspect-oriented software development.
12. Aspect-oriented software development In computing, Aspect-oriented software development (AOSD) is an emerging software development technology that seeks new modularizations of software systems in order to isolate secondary or supporting functions from the main program's business logic. AOSD allows multiple concerns to be expressed separately and automatically unified into working systems.
13. History AOP as such has a number of antecedents: the Visitor Design Pattern, CLOS MOP, and others. Gregor Kiczales and colleagues at Xerox PARC developed AspectJ (perhaps the most popular general-purpose AOP package) and made it available in 2001. IBM's research team emphasized the continuity of the practice of modularizing concerns with past programming practice, and in 2001 offered the more powerful (but less usable) Hyper/J and Concern Manipulation Environment, which have not seen wide usage. EmacsLisp changelog added AOP related code in version 19.28. The examples in this article use AspectJ as it is the most widely known of AOP languages
15. Examples of aspects One example of such aspects are design patterns, which combine various kinds of classes to produce a common type of behavior. Another is logging.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40. Usage (in blogs) http://use.perl.org/ - blogs about Perl http://use.perl.org/~unimatrix/journal/857 http://use.perl.org/~Alias/journal/40368