From interpreting to compiling binding times
Proceedings of the third European symposium on programming on ESOP '90
Documenting frameworks using patterns
OOPSLA '92 conference proceedings on Object-oriented programming systems, languages, and applications
Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Tutorial notes on partial evaluation
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Topics in online partial evaluation
Topics in online partial evaluation
Object-oriented type systems
Creating the architecture of a manufacturing framework by design patterns
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
Duplication and partial evaluation: for a better understanding of reflective languages
Lisp and Symbolic Computation - Special issue on computational reflection
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Object-oriented programming: a unified foundation
Object-oriented programming: a unified foundation
Flick: a flexible, optimizing IDL compiler
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
Accurate binding-time analysis for imperative languages: flow, context, and return sensitivity
PEPM '97 Proceedings of the 1997 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Scaling up partial evaluation for optimizing the Sun commercial RPC protocol
PEPM '97 Proceedings of the 1997 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Tempo: specializing systems applications and beyond
ACM Computing Surveys (CSUR) - Special issue: electronic supplement to the September 1998 issue
Frameworks in the Financial Engineering Domain - An Experience Report
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis
ECOOP '95 Proceedings of the 9th 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
Effective Specialization of Realistic Programs via Use Sensitivity
SAS '97 Proceedings of the 4th International Symposium on Static Analysis
A Uniform Approach for Compile-Time and Run-Time Specialization
Selected Papers from the Internaltional Seminar on Partial Evaluation
Harissa: a flexible and efficient java environment mixing bytecode and compiled code
COOTS'97 Proceedings of the 3rd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 3
IEEE Journal on Selected Areas in Communications
A Generic Reification Technique for Object-Oriented Reflective Languages
Higher-Order and Symbolic Computation
PADO '01 Proceedings of the Second Symposium on Programs as Data Objects
Load-Time Structural Reflection in Java
ECOOP '00 Proceedings of the 14th European Conference on Object-Oriented Programming
Reflex - Towards an Open Reflective Extension of Java
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Automatic program specialization for Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
A selective, just-in-time aspect weaver
Proceedings of the 2nd international conference on Generative programming and component engineering
An easy-to-use toolkit for efficient Java bytecode translators
Proceedings of the 2nd international conference on Generative programming and component engineering
Representation-based just-in-time specialization and the psyco prototype for python
Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A tour of tempo: a program specializer for the C language
Science of Computer Programming - Special issue on program transformation
Automated Software Engineering
Profile-guided static typing for dynamic scripting languages
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Evaluating Java runtime reflection for implementing cross-language method invocations
Proceedings of the 8th International Conference on the Principles and Practice of Programming in Java
Taming reflection: Aiding static analysis in the presence of reflection and custom class loaders
Proceedings of the 33rd International Conference on Software Engineering
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Da capo con scala: design and analysis of a scala benchmark suite for the java virtual machine
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Fissile type analysis: modular checking of almost everywhere invariants
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Hi-index | 0.00 |
Reflection plays a major role in the programming of generic applications. However, it introduces an interpretation layer which is detrimental to performance. A solution consists of relying on partial evaluation to remove this interpretation layer. This paper deals with improving a standard partial evaluator in order to handle the Java reflection API. The improvements basically consist of taking type information into account when distinguishing between static and dynamic data, as well as introducing two new specialization actions: reflection actions. Benchmarks using the serialization framework show the benefits of the approach.