  |
AspectJ - http://www.eclipse.org/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] |
  |
ASM - http://asm.objectweb.org/
Very small and fast Java bytecode manipulation framework; can be used to dynamically generate stub classes or other proxy classes, directly in binary form, or to dynamically modify classes at load time, just before loaded into a JVM. [Open Source, BSD] |
  |
PROSE - http://prose.ethz.ch/
PROgrammable extenSions of sErvices; allows modifying Java programs at run-time; dynamic aspect-oriented programming (AOP), adaptive service architectures, and information systems for mobile computing. |
  |
AspectWerkz - http://aspectwerkz.codehaus.org/
Dynamic, lightweight and high-performing AOP framework for Java; uses bytecode modification to weave classes at project build-, class-load-, or run-time. [Open Source, LGPL] |
  |
Sally - http://dawis.icb.uni-due.de/research/aosd/sally/
A general-purpose aspect language (GPAL) based on Java, with aspect reflection. |
  |
Concerning AOP and Inheritance - http://dawis.icb.uni-due.de/fileadmin/dawis_template/main/resources/publications/aosd/shaUnl_ConcerningAOPandInheritance_2001.pdf
Paper that introduces the Java-based language Sally and compares it with AspectJ: interactions as opposed to method entry, named advice, advice overriding. Also compares aspects, conventional inheritance, and mixins. |
  |
HyperJ [IBM] - http://www.alphaworks.ibm.com/tech/hyperj
A Java tool supporting advanced Multi-Dimensional Separation of Concerns. [Freeware] |
  |
DemeterJ - http://www.ccs.neu.edu/research/demeter/DemeterJava/
An adaptive programming language based on Java. The "big sister" of DJ. |
  |
JAsCo - http://ssel.vub.ac.be/jasco/
Advanced Java-based aspect-oriented programming (AOP or AOSD) language originally tailored for the component-based field. Main traits: highly reusable aspects, strong aspectual composition mechanism to manage combinations of aspects. |
  |
DJ - http://www.ccs.neu.edu/research/demeter/DJ/
Support for adaptive programming (dynamic structure-shy traversals and visitors) in pure Java. |
  |
abc: the AspectBench Compiler for AspectJ - http://abc.comlab.ox.ac.uk/introduction
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] |
  |
EAOP tool - http://www.emn.fr/x-info/eaop/tool.html
A research prototype for Event-based Aspect-Oriented Programming (EAOP) for Java. |
  |
Aspect Browser - http://www-cse.ucsd.edu/users/wgg/Software/AB/
A tool for Java (with optional Emacs support) which helps developers to find and visualise crosscutting concerns, using text matching. [Freeware] |
  |
AspectJ, 0.8b5: Real-world AOP tool simplifies OO development - http://www.adtmag.com/java/article.aspx?id=4712
Detailed review of the aspect-oriented Java extension AspectJ 0.8, by Rich Price, a senior staff engineer at CheckFree Corp. |
 |
Macker - http://innig.net/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] |