ACM Home Page
Please provide us with feedback. Feedback
Towards partially evaluating reflection in Java
Full text PdfPdf (2.28 MB)
Source ACM/SIGPLAN Workshop Partial Evaluation and Semantics-Based Program Manipulation archive
Proceedings of the 2000 ACM SIGPLAN workshop on Partial evaluation and semantics-based program manipulation table of contents
Boston, Massachusetts, United States
Pages: 2 - 11  
Year of Publication: 2000
ISBN:1-58113-201-8
Also published in ...
Authors
Mathias Braux  Écoledes Mines de Nantes, 4, rue Alfred Kastler, 44307 Nantes, Cedex 03, France
Jacques Noyé  Écoledes Mines de Nantes, 4, rue Alfred Kastler, 44307 Nantes, Cedex 03, France
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 40,   Citation Count: 7
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/328690.328693
What is a DOI?

ABSTRACT

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.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
L.O. Andersen. Program Analysis and Specialization for the C Programming Language. PhD thesis, Computer Science Department, University of Copenhagen, May 1994.
 
2
 
3
 
4
 
5
6
7
 
8
9
 
10
A.S. Gokhale and D.C. Schmidt. Optimizing a CORBA IIOP protocol engine for minimal footprint multimedia system. IEEE Journal on Selected Areas in Communications, special issue on Service Enabling Platform for Networked Multimedia Systems, 1999.
 
11
C.L. Hankin and D. Le M~tayer. A type-based framework for program analysis. In B. Le Charlier, editor, Static Analysis - First International Static Analysis Symposium, SAS'94, volume 864 of Lecture Notes in Computer Science, pages 380--394, Namur, Belgium, September 1994. Springer-Verlag.
12
 
13
 
14
 
15
B. Jay and J. Noble. Shaping object-oriented programs. Technical Report 96-16, University of Technology, Sydney, 1996.
16
 
17
 
18
G. Kiczales, j. Lamping, A. Mendhekar, C. Madea, C. Lopes, and J.-M. Loingtier. Aspect-oriented programming. In M. Aksit and S. Matsuoka, editors, ECOOP'97- Object-Oriented Programming- 11th European Conference, volume 1241 of Lecture Notes in Computer Science, pages 220-242, Jyv~kyla, Finland, june 1997. Springer-Verlag.
19
 
20
P. Maes. Concepts and Experiments in Computational Reflection. PhD thesis, Vrije Universiteit Brussel, 1987.
 
21
H. Makholm. Specializing C - an introduction to the principles behind C-Mix/f1. Technical report, Computer Science Department, University of Copenhagen, Jure 1999.
 
22
 
23
B. Moura. Bridging the gap between functional and imperative languages. PhD thesis, Universitfi de Rennes I, Rennes, France, 1997.
 
24
G. Muller, B. Moura, F. Bellard, and C. Consel. Harissa: a flexible and efficient Java environment mixing bytecode and compiled code. In 3rd Usenix Conference on Object-oriented Technologies and systems (COOTS'97), 1997.
25
 
26
 
27
A CM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, Amsterdam, The Netherlands, June 1997. ACM SIGPLAN Notices, 32(12).
 
28
E. Ruf. Partial evaluation in reflective system implemantations. In OOSPLA '93 Workshop on Reflection and Meta-Level architectures, oct 1993.
 
29
30
 
31
 
32
SUN Microsystems. JavaBeans API specifications. http://java, sun. corn/beans, 1997. Revision 1.00-A.
 
33
SUN Microsystems. Java Object Serialization specification, November 1998. JDK 1.2.
 
34
SUN Microsystems. Java Remote Method Invocation specification, October 1998. Revision 1.50, JDK 1.2.
 
35
SUN Microsystems. Java TM 2 Platform, Standard Edition, vI.2.~ API Specification, 1999.
 
36
P. Thiemann. Towards partial evaluation of full scheme. In G. Kiczales, editor, Reflection'96, pages 95-106, San Francisco, California, April 1996.

CITED BY  7

Collaborative Colleagues:
Mathias Braux: colleagues
Jacques Noyé: colleagues