AOSD Conference

D3: Aspect-Oriented Programming with Caesar

Ivica Aracic, Technische UniversitÄt Darmstadt
Vaidas Gasiunas, Technische UniversitÄt Darmstadt
Klaus Ostermann, Technische UniversitÄt Darmstadt

Wednesday, March 17, 14:00
Friday, March 19, 12:30

CaesarJ is a new aspect-oriented programming language which addresses the most important goals of software design: modularity, reuse, flexibility, and correctness. It is easy to learn because it is based on object-oriented concepts and fully integrates with the Java programming language and Eclipse IDE. All new language features are compiled to efficient Java byte-code.

In comparison to other AO languages, CaesarJ provides unique support for reusable aspects, variability management, feature-oriented programming, and flexible aspect deployment. Technically, this is enabled by CaesarJ's support for virtual classes, family polymorphism, propagating mixin composition, and extensible aspect deployment strategies on top of an AspectJ-like pointcut language.

Attendees of the demonstration will see a live example that illustrates the expressiveness gained by the features of CaesarJ. We will show the new modularity and reusability features by means of a small software product line. Flexible aspect deployment will be illustrated by deployment strategies for thread-local and remote aspects. We will also present our Eclipse plug-in, which provides IDE integration and powerful visualization features for the new language concepts.

CaesarJ can be downloaded at

Edited by the AOSD Conference Committee.  Send comments to: