Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Predicate Dispatching: A Unified Theory of Dispatch
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
Virtual machine support for dynamic join points
Proceedings of the 3rd international conference on Aspect-oriented software development
Concurrency and Computation: Practice & Experience - 2002 ACM Java Grande—ISCOPE Conference Part I
Constructing a metacircular Virtual machine in an exploratory programming environment
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
LIL: an architecture-neutral language for virtual-machine stubs
VM'04 Proceedings of the 3rd conference on Virtual Machine Research And Technology Symposium - Volume 3
Demystifying magic: high-level low-level programming
Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Bytecodes meet combinators: invokedynamic on the JVM
Proceedings of the Third Workshop on Virtual Machines and Intermediate Languages
Improving compiler-runtime separation with XIR
Proceedings of the 6th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Proceedings of the 8th International Conference on the Principles and Practice of Programming in Java
Making aspects natural: events and composition
Proceedings of the tenth international conference on Aspect-oriented software development
An overview of ALIA4J: an execution model for advanced-dispatching languages
TOOLS'11 Proceedings of the 49th international conference on Objects, models, components, patterns
Design and implementation of an aspect instantiation mechanism
Transactions on Aspect-Oriented Software Development I
abc: an extensible AspectJ compiler
Transactions on Aspect-Oriented Software Development I
Turbo DiSL: partial evaluation for high-level bytecode instrumentation
TOOLS'12 Proceedings of the 50th international conference on Objects, Models, Components, Patterns
A unified model of aspect-instantiation policies
Proceedings of the 3rd international workshop on Free composition
Hi-index | 0.03 |
The ALIA4J approach provides a framework for implementing execution environments with support for advanced dispatching as found, e.g., in aspect-oriented or predicate-dispatching languages. It also defines an extensible meta-model acting as intermediate representation for dispatching declarations, e.g., pointcut-advice or predicate methods. From the intermediate representation of all dispatch declarations in the program the framework derives an execution model for which ALIA4J specifies a generic execution strategy. The meta-object protocol (MOP) formed by the meta-model and framework is defined such that new programming language concepts can be implemented modularly: The semantics can be implemented in an interpretative style (e.g., using reflection) or by describing how to generate corresponding Java bytecode or even machine code. In the latter two cases, the implementation can reason about the current code generation context; this enables sophisticated optimizations. We discuss these optimization facilities by means of two case studies.