Using prototypical objects to implement shared behavior in object-oriented systems
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Organizing programs without classes
Lisp and Symbolic Computation
The design and implementation of the self compiler, an optimizing compiler for object-oriented programming languages
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
MultiJava: modular open classes and symmetric multiple dispatch for Java
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A semantical approach to method-call interception
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Incremental programming with extensible decisions
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Dynamic weaving for aspect-oriented programming
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Java Virtual Machine Specification
Java Virtual Machine Specification
The Java Language Specification
The Java Language Specification
Predicate Dispatching: A Unified Theory of Dispatch
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
A Formal Definition of Crosscuts
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
AspectS - Aspect-Oriented Programming with Squeak
NODe '02 Revised Papers from the International Conference NetObjectDays on Objects, Components, Architectures, Services, and Applications for a Networked World
Eos: instance-level aspects for integrated system design
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
What are the key issues for commercial AOP use: how does AspectWerkz address them?
Proceedings of the 3rd international conference on Aspect-oriented software development
Proceedings of the 3rd international conference on Aspect-oriented software development
Proceedings of the 3rd international conference on Aspect-oriented software development
Morphing aspects: incompletely woven aspects and continuous weaving
Proceedings of the 3rd international conference on Aspect-oriented software development
Virtual machine support for dynamic join points
Proceedings of the 3rd international conference on Aspect-oriented software development
Expert One-on-One J2EE Development without EJB
Expert One-on-One J2EE Development without EJB
A semantics for advice and dynamic join points in aspect-oriented programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Proceedings of the 4th international conference on Aspect-oriented software development
An execution layer for aspect-oriented programming languages
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
Pluggable AOP: designing aspect mechanisms for third-party composition
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Adding trace matching with free variables to AspectJ
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Explicitly distributed AOP using AWED
Proceedings of the 5th international conference on Aspect-oriented software development
Language constructs for context-oriented programming: an overview of ContextL
DLS '05 Proceedings of the 2005 symposium on Dynamic languages
Adapting virtual machine techniques for seamless aspect support
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Efficient control flow quantification
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
A direction for research on virtual machine support for concern composition
Proceedings of the 1st workshop on Virtual machines and intermediate languages for emerging modularization mechanisms
Aspect-oriented software development
Aspect-oriented software development
A compilation and optimization model for aspect-oriented programs
CC'03 Proceedings of the 12th international conference on Compiler construction
Expressive pointcuts for increased modularity
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
SC'05 Proceedings of the 4th international conference on Software Composition
Transactions on Aspect-Oriented Software Development I
Proceedings of the 7th international conference on Aspect-oriented software development
Delegation-based semantics for modularizing crosscutting concerns
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Composing new abstractions from object fragments
Proceedings of the 2nd Workshop on Virtual Machines and Intermediate Languages for emerging modularization mechanisms
Predicate dispatch for aspect-oriented programming
Proceedings of the 2nd Workshop on Virtual Machines and Intermediate Languages for emerging modularization mechanisms
An implementation substrate for languages composing modularized crosscutting concerns
Proceedings of the 2009 ACM symposium on Applied Computing
A comparison of context-oriented programming languages
International Workshop on Context-Oriented Programming
Towards an actor-based concurrent machine model
Proceedings of the 4th workshop on the Implementation, Compilation, Optimization of Object-Oriented Languages and Programming Systems
An architecture for composing embedded domain-specific languages
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
Supporting dynamic aspect-oriented features
ACM Transactions on Software Engineering and Methodology (TOSEM)
Mostly modular compilation of crosscutting concerns by contextual predicate dispatch
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Optimizing dynamic dispatch with fine-grained state tracking
Proceedings of the 6th symposium on Dynamic languages
Safely updating running software: tranquility at the object level
Proceedings of the 7th Workshop on Reflection, AOP and Meta-Data for Software Evolution
Read-only execution for dynamic languages
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
Optimizing aspect-oriented mechanisms for embedded applications
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
A graph-based operational semantics for context-oriented programming
Proceedings of the 2nd International Workshop on Context-Oriented Programming
An object-oriented framework for aspect-oriented languages
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
Transactions on Aspect-Oriented Software Development IX
Method slots: supporting methods, events, and advices by a single language construct
Proceedings of the 12th annual international conference on Aspect-oriented software development
Hi-index | 0.00 |
Aspect-oriented programming languages usually are extensions of object-oriented ones, and their compilation target is usually the (virtual) machine model of the language they extend. While that model elegantly supports core object-oriented language mechanisms such as virtual method dispatch, it provides no direct support for core aspectoriented language mechanisms such as advice application. Hence, current implementations of aspect-oriented languages bring about insufficient and inelegant solutions. This paper introduces a lightweight, objectbased machine model for aspect-oriented languages based on objectoriented ones. It is centered around delegation and relies on a very dynamic notion of join points as loci of late-bound dispatch of functionality. The model is shown to naturally support an important number of aspect-oriented language mechanisms. Additionally, a formal semantics is presented as an extension to the object-based δ calculus.