Debugging optimized code with dynamic deoptimization
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
A dynamic optimization framework for a Java just-in-time compiler
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
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
Online feedback-directed optimization of Java
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
JAsCo: an aspect-oriented approach tailored for component based software development
Proceedings of the 2nd international conference on Aspect-oriented software development
Just-in-time aspects: efficient dynamic weaving for Java
Proceedings of the 2nd international conference on Aspect-oriented software development
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Thin Guards: A Simple and Effective Technique for Reducing the Penalty of Dynamic Class Loading
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
An Empirical Study of Method In-lining for a Java Just-in-Time Compiler
Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium
Design, implementation and evaluation of adaptive recompilation with on-stack replacement
Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
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
Effectiveness of cross-platform optimizations for a java just-in-time compiler
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Proceedings of the 3rd international conference on Aspect-oriented software development
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
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
JavaTM just-in-time compiler and virtual machine improvements for server and middleware applications
VM'04 Proceedings of the 3rd conference on Virtual Machine Research And Technology Symposium - Volume 3
The java hotspotTM server compiler
JVM'01 Proceedings of the 2001 Symposium on JavaTM Virtual Machine Research and Technology Symposium - Volume 1
A compilation and optimization model for aspect-oriented programs
CC'03 Proceedings of the 12th international conference on Compiler construction
Transactions on Aspect-Oriented Software Development I
A flexible architecture for pointcut-advice language implementations
Proceedings of the 1st workshop on Virtual machines and intermediate languages for emerging modularization mechanisms
Expressive scoping of dynamically-deployed aspects
Proceedings of the 7th international conference on Aspect-oriented software development
Proceedings of the 7th international conference on Aspect-oriented software development
Extracting updating aspects from version differences
Proceedings of the 2008 AOSD workshop on Linking aspect technology and evolution
Virtual machines and intermediate languages for emerging modularization mechanisms
Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
A decision tree-based approach to dynamic pointcut evaluation
Proceedings of the 2nd Workshop on Virtual Machines and Intermediate Languages for emerging modularization mechanisms
Flexible calling context reification for aspect-oriented programming
Proceedings of the 8th ACM international conference on Aspect-oriented software development
A delegation-based approach for the unanticipated dynamic evolution of distributed objects
Journal of Systems and Software
AspectOptima: A Case Study on Aspect Dependencies and Interactions
Transactions on Aspect-Oriented Software Development V
@J: towards rapid development of dynamic analysis tools for the Java Virtual Machine
Proceedings of the Third Workshop on Virtual Machines and Intermediate Languages
Combining formal methods and aspects for specifying and enforcing architectural invariants
COORDINATION'07 Proceedings of the 9th international conference on Coordination models and languages
Supporting dynamic aspect-oriented features
ACM Transactions on Software Engineering and Methodology (TOSEM)
Scoping strategies for distributed aspects
Science of Computer Programming
Optimizing aspect-oriented mechanisms for embedded applications
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
EScala: modular event-driven object interactions in scala
Proceedings of the tenth international conference on Aspect-oriented software development
Towards a domain-specific aspect language for dynamic program analysis: position paper
Proceedings of the sixth annual workshop on Domain-specific aspect languages
Comprehensive aspect weaving for Java
Science of Computer Programming
A machine model for aspect-oriented programming
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Efficient language implementation with ALIA4J and EMFText: forum demonstration
Proceedings of the 12th annual international conference companion on Aspect-oriented software development
An Analysis of Language-Level Support for Self-Adaptive Software
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
Hi-index | 0.00 |
Current approaches to compiling aspect-oriented programs are inefficient. This inefficiency has negative effects on the productivity of the development process and is especially prohibitive for dynamic aspect deployment. In this work, we present how well-known virtual machine techniques can be used with only slight modifications to support fast aspect deployment while retaining runtime performance. Our implementation accelerates dynamic aspect deployment by several orders of magnitude relative to mainstream aspect-oriented environments. We also provide a detailed comparison of alternative implementations of execution environments with support for dynamic aspect deployment.