english deutsch
abc: the AspectBench Compiler for AspectJ
The distribution of an optimising, extensible compiler for AspectJ, freely available under the LGPL. The abc project is a joint effort between the University of Oxford (UK), McGill University (Canada), and the University of Aarhus (Denmark). [Open source, LGPL]
Aspect Browser
A tool for Java (with optional Emacs support) which helps developers to find and visualise crosscutting concerns, using text matching. [Freeware]
AspectJ
Aspect-oriented Java extension, seamless, from Xerox PARC. Goal: to make aspect-oriented programming (AOP) technology available to a wide range of programmers. [Open Source, MPL]
AspectJ, 0.8b5: Real-world AOP tool simplifies OO
Detailed review of the aspect-oriented Java extension AspectJ 0.8, by Rich Price, a senior staff engineer at CheckFree Corp.
Concerning AOP and Inheritance
Paper in PDF format which introduces the Java-based language Sally and compares it with AspectJ: interactions as opposed to method entry, named advices, advice overriding. Also compares aspects, conventional inheritance, and mixins.
DemeterJ
An adaptive programming language based on Java. The "big sister" of DJ.
DJ
Support for adaptive programming (dynamic structure-shy traversals and visitors) in pure Java.
EAOP tool
A research prototype for Event-based Aspect-Oriented Programming (EAOP) for Java.
HyperJ [IBM]
A Java tool supporting advanced Multi-Dimensional Separation of Concerns. [Freeware]
JAC (Java Aspect Components)
Aspect-oriented application server and development environment. [Open Source, LGPL]
Macker
Helps enforce architectural rules (layering, tiering, and modularity) in Java code. It applies pattern-based access rules from XML rules files to compiled classes. [Open source, GPL]
Sally
A general-purpose aspect language (GPAL) based on Java, with aspect reflection.
Specialisation Classes
Specialization classes are a Java language extension for integrating forms of adaptive behavior in an existing program. An adaptive class is defined by attaching a number of alternative implementations to a regular Java class, that complement the existing, default implementation. [Freeware]