Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
Metaclasses are first class: The ObjVlisp Model
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
The annotated C++ reference manual
The annotated C++ reference manual
A third-generation SELF implementation: reconciling responsiveness with performance
OOPSLA '94 Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
A Metaobject Architecture for Fault-Tolerant Distributed Systems: The FRIENDS Approach
IEEE Transactions on Computers
Software—Practice & Experience
Towards partially evaluating reflection in Java
PEPM '00 Proceedings of the 2000 ACM SIGPLAN workshop on Partial evaluation and semantics-based program manipulation
The Art of the Metaobject Protocol
The Art of the Metaobject Protocol
Designing an Extensible Distributed Language with a Meta-Level Architecture
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Design and Partial Evaluation of Meta-Objects for a Concurrent Reflective Language
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
OpenJIT: An Open-Ended, Reflective JIT Compiler Framework for Java
ECOOP '00 Proceedings of the 14th European Conference on Object-Oriented Programming
MetaJava: an efficient run-time meta architecture for Java/sup TM/
IWOOOS '96 Proceedings of the 5th International Workshop on Object Orientation in Operating Systems (IWOOOS '96)
Automatic program transformation with JOIE
ATEC '98 Proceedings of the annual conference on USENIX Annual Technical Conference
Altering Java Semantics via Bytecode Manipulation
GPCE '02 Proceedings of the 1st ACM SIGPLAN/SIGSOFT conference on Generative Programming and Component Engineering
A Reflective Active Network Node
IWAN '00 Proceedings of the Second International Working Conference on Active Networks
A Bytecode Translator for Distributed Execution of ``Legacy'' Java Software
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
JAC: A Flexible Solution for Aspect-Oriented Programming in Java
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Reflex - Towards an Open Reflective Extension of Java
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Kava - A Reflective Java Based on Bytecode Rewriting
Proceedings of the 1st OOPSLA Workshop on Reflection and Software Engineering: Reflection and Software Engineering, Papers from OORaSE 1999
Active Network Service Management Based on Meta-level Architectures
Proceedings of the 1st OOPSLA Workshop on Reflection and Software Engineering: Reflection and Software Engineering, Papers from OORaSE 1999
CD '02 Proceedings of the IFIP/ACM Working Conference on Component Deployment
Model, Notation, and Tools for Verification of Protocol-Based Components Assembly
CD '02 Proceedings of the IFIP/ACM Working Conference on Component Deployment
Portable Resource Reification in Java-Based Mobile Agent Systems
MA '01 Proceedings of the 5th International Conference on Mobile Agents
Hyper-Code Revisited: Unifying Program Source, Executable, and Data
POS-9 Revised Papers from the 9th International Workshop on Persistent Object Systems
A Multi-agent Reflective Architecture for User Assistance and Its Application to E-commerce
CIA '02 Proceedings of the 6th International Workshop on Cooperative Information Agents VI
Flexible metaprogramming and AOP in Java
Science of Computer Programming
Application of Reflection in Model Transformation Languages
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
Ontology-based configuration of adaptive smart homes
Proceedings of the 7th workshop on Reflective and adaptive middleware
Software Manipulation with Annotations in Java
Advances in Software Engineering
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Mostly modular compilation of crosscutting concerns by contextual predicate dispatch
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Proceedings of the 7th Workshop on Reflection, AOP and Meta-Data for Software Evolution
Aspect-oriented instrumentation with GCC
RV'10 Proceedings of the First international conference on Runtime verification
Polymorphic bytecode instrumentation
Proceedings of the tenth international conference on Aspect-oriented software development
Distributed dynamic weaving is a crosscutting concern
Proceedings of the 2011 ACM Symposium on Applied Computing
Comprehensive aspect weaving for Java
Science of Computer Programming
Generative programming from a post object-oriented programming viewpoint
UPP'04 Proceedings of the 2004 international conference on Unconventional Programming Paradigms
Aspect-oriented programming beyond dependency injection
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Injecting communication faults to experimentally validate java distributed applications
ISSADS'05 Proceedings of the 5th international conference on Advanced Distributed Systems
Do we really need to extend syntax for advanced modularity?
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
A java implementation of a component model with explicit symbolic protocols
SC'05 Proceedings of the 4th international conference on Software Composition
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
Program transformation with reflection and aspect-oriented programming
GTTSE'05 Proceedings of the 2005 international conference on Generative and Transformational Techniques in Software Engineering
An expressive aspect language for system applications with arachne
Transactions on Aspect-Oriented Software Development I
Aspect-Oriented development of crosscutting features in distributed, heterogeneous systems
Transactions on Aspect-Oriented Software Development II
Using metadata transformations to integrate class extensions in an existing class hierarchy
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
LogicObjects: a linguistic symbiosis approach to bring the declarative power of Prolog to Java
Proceedings of the 9th ECOOP Workshop on Reflection, AOP, and Meta-Data for Software Evolution
Bio-inspired self-organization for supporting dynamic reconfiguration of modular agents
Mathematical and Computer Modelling: An International Journal
Challenges for refinement and composition of instrumentations: position paper
SC'12 Proceedings of the 11th international conference on Software Composition
Exception handling: a field study in Java and .NET
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
InterAspect: aspect-oriented instrumentation with GCC
Formal Methods in System Design
Dynamic aspect-oriented programming in java: the hotwave experience
Transactions on Aspect-Oriented Software Development IX
ENdoSnipe: an industrial application of AOP for diagnosing Java systems
Proceedings of the 12th annual international conference companion on Aspect-oriented software development
Comparison of instrumentation techniques for dynamic program analysis on the Java virtual machine
Proceedings of the 12th annual international conference companion on Aspect-oriented software development
Proceedings of the 28th Annual ACM Symposium on Applied Computing
ShadowVM: robust and comprehensive dynamic program analysis for the java platform
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Enabling modularity and re-use in dynamic program analysis tools for the java virtual machine
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
A hybrid class- and prototype-based object model to support language-neutral structural intercession
Information and Software Technology
Hi-index | 0.00 |
The standard reflection API of Java provides the ability to introspect a program but not to alter program behavior. This paper presents an extension to the reflection API for addressing this limitation. Unlike other extensions enabling behavioral reflection, our extension called Javassist enables structural reflection in Java. For using a standard Java virtual machine (JVM) and avoiding a performance problem, Javassist allows structural reflection only before a class is loaded into the JVM. However, Javassist still covers various applications including a language extension emulating behavioral reflection. This paper also presents the design principles of Javassist, which distinguish Javassist from related work.