Hyper/J: multi-dimensional separation of concerns for Java
Proceedings of the 22nd international conference on Software engineering
Communications of the ACM
Runtime aspect weaving through metaprogramming
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Java Virtual Machine Specification
Java Virtual Machine Specification
Mastering AspectJ: Aspect-Oriented Programming in Java
Mastering AspectJ: Aspect-Oriented Programming in Java
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
Aspect-Oriented Programming with AspectJ
Aspect-Oriented Programming with AspectJ
An AspectJ-enabled eclipse core runtime platform
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
An easy-to-use toolkit for efficient Java bytecode translators
Proceedings of the 2nd international conference on Generative programming and component engineering
AspectJ in Action: Practical Aspect-Oriented Programming
AspectJ in Action: Practical Aspect-Oriented Programming
Virtual machine support for dynamic join points
Proceedings of the 3rd international conference on Aspect-oriented software development
AJEER: an aspectJ-enabled eclipse runtime
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
AJEER: an aspectJ-enabled eclipse runtime
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Measuring the dynamic behaviour of AspectJ programs
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
An expressive aspect language for system applications with Arachne
Proceedings of the 4th international conference on Aspect-oriented software development
What does aspect-oriented programming mean to Cobol?
Proceedings of the 4th international conference on Aspect-oriented software development
Role-based refactoring of crosscutting concerns
Proceedings of the 4th international conference on Aspect-oriented software development
Aspect-oriented programming and modular reasoning
Proceedings of the 27th international conference on Software engineering
An execution layer for aspect-oriented programming languages
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Aspectual Caml: an aspect-oriented functional language
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Are patches cutting it?: structuring distribution within a JVM using aspects
CASCON '05 Proceedings of the 2005 conference of the Centre for Advanced Studies on Collaborative research
A disciplined approach to aspect composition
Proceedings of the 2006 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Expressing different conceptual models of join point selections in aspect-oriented design
Proceedings of the 5th international conference on Aspect-oriented software development
A join point for loops in AspectJ
Proceedings of the 5th international conference on Aspect-oriented software development
A framework and tool supports for generating test inputs of AspectJ programs
Proceedings of the 5th international conference on Aspect-oriented software development
On instrumenting obfuscated java bytecode with aspects
Proceedings of the 2006 international workshop on Software engineering for secure systems
Aspect-specification based on structural type information
Proceedings of the 2006 ACM symposium on Applied computing
Adapting virtual machine techniques for seamless aspect support
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
The paradoxical success of aspect-oriented programming
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Semantics of static pointcuts in aspectJ
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Foundations of incremental aspect model-checking
ACM Transactions on Software Engineering and Methodology (TOSEM)
Perspectives on automated testing of aspect-oriented programs
Proceedings of the 3rd workshop on Testing aspect-oriented programs
A flexible architecture for pointcut-advice language implementations
Proceedings of the 1st workshop on Virtual machines and intermediate languages for emerging modularization mechanisms
A machine code model for efficient advice dispatch
Proceedings of the 1st workshop on Virtual machines and intermediate languages for emerging modularization mechanisms
A distributed dynamic aspect machine for scientific software development
Proceedings of the 1st workshop on Virtual machines and intermediate languages for emerging modularization mechanisms
On bytecode slicing and aspectJ interferences
Proceedings of the 6th workshop on Foundations of aspect-oriented languages
Proceedings of the 5th workshop on Software engineering properties of languages and aspect technologies
Control and data flow structural testing criteria for aspect-oriented programs
Journal of Systems and Software
On dynamically-scoped crosscutting mechanisms
ACM SIGPLAN Notices
Software—Practice & Experience
Bridging the gap between aspect mining and refactoring
Proceedings of the 3rd workshop on Linking aspect technology and evolution
AVal: an extensible attribute-oriented programming validator for Java: Research Articles
Journal of Software Maintenance and Evolution: Research and Practice - Source Code Analysis and Manipulation (SCAM 2006)
Awesome: an aspect co-weaving system for composing multiple aspect-oriented extensions
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Mirages: behavioral intercession in a mirror-based architecture
Proceedings of the 2007 symposium on Dynamic languages
Automatic extraction of framework-specific models from framework-based application code
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Database-aware test coverage monitoring
ISEC '08 Proceedings of the 1st India software engineering conference
Controlled, systematic, and efficient code replacement for running java programs
Proceedings of the 3rd ACM SIGOPS/EuroSys European Conference on Computer Systems 2008
Test-based pointcuts for robust and fine-grained join point specification
Proceedings of the 7th international conference on Aspect-oriented software development
Expressive scoping of dynamically-deployed aspects
Proceedings of the 7th international conference on Aspect-oriented software development
Lightweight virtual machine support for AspectJ
Proceedings of the 7th international conference on Aspect-oriented software development
Proceedings of the 7th international conference on Aspect-oriented software development
Énfasis: a model for local variable crosscutting
Proceedings of the 2008 ACM symposium on Applied computing
Redundancy-free residual dispatch: using ordered binary decision diagrams for efficient dispatch
Proceedings of the 7th workshop on Foundations of aspect-oriented languages
Applying and evaluating AOM for platform independent behavioral UML models
Proceedings of the 2008 AOSD workshop on Aspect-oriented modeling
Groovy AOP: a dynamic AOP system for a JVM-based language
Proceedings of the 2008 AOSD workshop on Software engineering properties of languages and aspect technologies
DLS '08 Proceedings of the 2008 symposium on Dynamic languages
Aspect weaving in standard Java class libraries
Proceedings of the 6th international symposium on Principles and practice of programming in Java
Zero-Overhead Composable Aspects for .NET
Advances in Software Engineering
Composing new abstractions from object fragments
Proceedings of the 2nd Workshop on Virtual Machines and Intermediate Languages for emerging modularization mechanisms
Proceedings of the 2nd Workshop on Virtual Machines and Intermediate Languages for emerging modularization mechanisms
A decision tree-based approach to dynamic pointcut evaluation
Proceedings of the 2nd Workshop on Virtual Machines and Intermediate Languages for emerging modularization mechanisms
Fast extraction of high-quality framework-specific models from application code
Automated Software Engineering
Dependent advice: a general approach to optimizing history-based aspects
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Flexible calling context reification for aspect-oriented programming
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Can we refactor conditional compilation into aspects?
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Modeling interaction join point adaptations independent of pointcut models using UML stereotypes
Proceedings of the 13th workshop on Aspect-oriented modeling
True and transparent distributed composition of aspect-components
Proceedings of the ACM/IFIP/USENIX 2006 International Conference on Middleware
Journal of Systems and Software
Modular implementation of adaptive decisions in stochastic simulations
Proceedings of the 2009 ACM symposium on Applied Computing
A join point model for fine-grained aspects
ECC'08 Proceedings of the 2nd conference on European computing conference
Science of Computer Programming
Identifying semantic differences in AspectJ programs
Proceedings of the eighteenth international symposium on Software testing and analysis
AspectOptima: A Case Study on Aspect Dependencies and Interactions
Transactions on Aspect-Oriented Software Development V
Language-Independent Quantification and Weaving for Feature Composition
SC '09 Proceedings of the 8th International Conference on Software Composition
Transactional pointcuts: designation reification and advice of interrelated join points
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
Advanced runtime adaptation for Java
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
HotWave: creating adaptive tools with dynamic aspect-oriented programming in Java
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
@J: towards rapid development of dynamic analysis tools for the Java Virtual Machine
Proceedings of the Third Workshop on Virtual Machines and Intermediate Languages
Proceedings of the first joint WOSP/SIPEW international conference on Performance engineering
Parallel dynamic analysis on multicores with aspect-oriented programming
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
An architecture for composing embedded domain-specific languages
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
Types and modularity for implicit invocation with implicit announcement
ACM Transactions on Software Engineering and Methodology (TOSEM)
Multi-stage aspect-oriented composition of component-based applications
OTM'07 Proceedings of the 2007 OTM Confederated international conference on On the move to meaningful internet systems: CoopIS, DOA, ODBASE, GADA, and IS - Volume Part I
Debugging aspect-enabled programs
SC'07 Proceedings of the 6th international conference on Software composition
Towards a tool for generating aspects from MEDL and PEDL specifications for runtime verification
RV'07 Proceedings of the 7th international conference on Runtime verification
Automating the mutation testing of aspect-oriented Java programs
Proceedings of the 5th Workshop on Automation of Software Test
An empirical evaluation of coupling metrics on aspect-oriented programs
Proceedings of the 2010 ICSE Workshop on Emerging Trends in Software Metrics
Supporting dynamic aspect-oriented features
ACM Transactions on Software Engineering and Methodology (TOSEM)
AspectC++: An integrated approach for static and dynamic adaptation of system software
Knowledge-Based Systems
Composition of dynamic analysis aspects
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
Weaving the fabric of the control loop through aspects
SOAR'09 Proceedings of the First international conference on Self-organizing architectures
Proceedings of the 7th Workshop on Reflection, AOP and Meta-Data for Software Evolution
Late binding of AspectJ advice
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
Clara: a framework for partially evaluating finite-state runtime monitors ahead of time
RV'10 Proceedings of the First international conference on Runtime verification
SScAC: towards a framework for small-scale software architectures comparison
SOFSEM'11 Proceedings of the 37th international conference on Current trends in theory and practice of computer science
Polymorphic bytecode instrumentation
Proceedings of the tenth international conference on Aspect-oriented software development
An aspect-oriented approach for implementing evolutionary computation applications
Proceedings of the tenth international conference on Aspect-oriented software development
Applying dependability aspects on top of "aspectized" software layers
Proceedings of the tenth international conference on Aspect-oriented software development
Supporting covariant return types and generics in type relaxed weaving
Proceedings of the 10th international workshop on Foundations of aspect-oriented languages
Information Sciences: an International Journal
A platform-independent UML profile for aspect-oriented development
Proceedings of The Fourth International C* Conference on Computer Science and Software Engineering
Comprehensive aspect weaving for Java
Science of Computer Programming
A model-driven framework for aspect weaver construction
Transactions on aspect-oriented software development VIII
Safe and atomic run-time code evolution for Java and its application to dynamic AOP
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
True and transparent distributed composition of aspect-components
Middleware'06 Proceedings of the 7th ACM/IFIP/USENIX international conference on Middleware
Towards a formal semantics for aspectj weaving
JMLC'06 Proceedings of the 7th joint conference on Modular Programming Languages
An aspect-oriented approach to declarative access control for web applications
APWeb'06 Proceedings of the 8th Asia-Pacific Web conference on Frontiers of WWW Research and Development
Expressive pointcuts for increased modularity
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
A type system for an aspect oriented programming language
ICDCIT'04 Proceedings of the First international conference on Distributed Computing and Internet Technology
Shadow programming: reasoning about programs using lexical join point information
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
A per-type instantiation mechanism for generic aspects
Proceedings of the 3rd international workshop on Variability & Composition
A debug interface for debugging multiple domain specific aspect languages
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
DiSL: a domain-specific language for bytecode instrumentation
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
Aspects of composition in the reflex AOP kernel
SC'06 Proceedings of the 5th international conference on Software Composition
General composition of software artifacts
SC'06 Proceedings of the 5th international conference on Software Composition
PHANtom: a modern aspect language for Pharo Smalltalk
Proceedings of the International Workshop on Smalltalk Technologies
An expressive aspect language for system applications with arachne
Transactions on Aspect-Oriented Software Development I
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
A framework for policy driven auto-adaptive systems using dynamic framed aspects
Transactions on Aspect-Oriented Software Development II
Information and Software Technology
A machine model for aspect-oriented programming
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
A staged static program analysis to improve the performance of runtime monitoring
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Usage and testability of AOP: An empirical study of AspectJ
Information and Software Technology
Functional instrumentation of actionscript programs with asil
IFL'11 Proceedings of the 23rd international conference on Implementation and Application of Functional Languages
Dynamic aspect-oriented programming in java: the hotwave experience
Transactions on Aspect-Oriented Software Development IX
A performance cost evaluation of aspect weaving
ACSC '13 Proceedings of the Thirty-Sixth Australasian Computer Science Conference - Volume 135
Join point interfaces for safe and flexible decoupling of aspects
ACM Transactions on Software Engineering and Methodology (TOSEM)
Hi-index | 0.00 |
This paper describes the implementation of advice weaving in AspectJ. The AspectJ language picks out dynamic join points in a program's execution with pointcuts and uses advice to change the behavior at those join points. The core task of AspectJ's advice weaver is to statically transform a program so that at runtime it will behave according to the AspeetJ language semantics. This paper describes the 1.1 implementation which is based on transforming bytecode. We describe how AspectJ's join points are mapped to regions of bytecode, how these regions are efficiently matched by AspectJ's pointcuts, and how pieces of advice are efficiently implemented at these regions. We also discuss both run-time and compile-time performance of this implementation.