Maya: multiple-dispatch syntax extension in Java
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
XAspects: an extensible system for domain-specific aspect languages
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Josh: an open AspectJ-like language
Proceedings of the 3rd international conference on Aspect-oriented software development
abc: an extensible AspectJ compiler
Proceedings of the 4th international conference on Aspect-oriented software development
Stratego/XT 0.16: components for transformation systems
Proceedings of the 2006 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Easy language extension with meta-aspectJ
Proceedings of the 28th international conference on Software engineering
Declarative, formal, and extensible syntax definition for aspectJ
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Polyglot: an extensible compiler framework for Java
CC'03 Proceedings of the 12th international conference on Compiler construction
Proceedings of the sixth annual workshop on Domain-specific aspect languages
Hi-index | 0.00 |
This article presents the preliminary results achieved while working with a language to define extensions to the concrete syntax of AspectJ. The language uses the concept of syntax classes, units that extend classes with syntax definitions, building modular specifications for extensions. A syntax class can define a new construct with cross-cutting features either by translating it into pure AspectJ code or by modifying the behaviour of elements in different parts of the program, acting like an aspect weaver. The definition of new pointcut designators is also possible, with clear separation between run-time and weave-time processing. The language can be used as a tool to create domain-specific extensions to AspectJ, and domain-specific aspect languages embedded into AspectJ.