D10: Aspect-Oriented Programming with Caesar
Wednesday 16:00-16:40 & Friday 10:30-11:10
Caesar is an aspect-oriented programming 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 byte-code.
In comparison to other AO languages, Caesar is unique in its support for reusable aspects, variability management, and flexible aspect deployment. Technically, this is enabled by Caesar's support for virtual classes, propagating mixin composition, and extensible aspect deployment strategies.
Attendees of the demonstration will see a live example that illustrates the expressiveness gained by the features of Caesar. We will show how different concerns of an application can be implemented independently from each other and integrated later in a crosscutting way. Virtual types and mixin-composition will be illustrated as the language features that enable independent reuse and variation of each crosscutting concern. We will demonstrate how various dynamic deployment strategies support dynamic variability of crosscutting behavior and joinpoint interception in distributed environments. We will also present our Eclipse plug-in that provides IDE integration and powerful visualization features for the new language concepts.
- Ivica Aracic (Darmstadt University of Technology, Germany)
- Vaidas Gasiunas (Darmstadt University of Technology, Germany)
- Klaus Ostermann (Darmstadt University of Technology, Germany)
Back to list of demonstrations
Edited by the AOSD Conference Committee. Send comments to: webmasteraosd.net