CALI CALI : Common Aspect Languages Interpreter
CALI is a framework to prototype and compose Aspect-Oriented Programming Languages on top of Java.
It is based on an abstract aspect language that its extensible to implement new AOPL.
As proof of appraoch and methodology, we have implemented the following language:

-AspectJ (Dynamic part of AspectJ, where intertype declartion can be implemented using regular AspectJ);
-EAOPJ : An implementation of Event-Based AOP for Java;
-COOL: A DSAL for coordination
-Decorator DSAL

These languages can be composed: We can compose aspect written in these different languages

You can use CALI to implement your new AOPL and compose it with exsiting implementation or using existing
implementation to write your appliactions with aspects form different AOPL.
Disclaimer: This is a version of CALI for research goals. It can contain some bugs.