Kava - using byte code rewriting to add behavioural reflection to Java

作者: Ian Welch , Robert J. Stroud

DOI:

关键词:

摘要: Many authors have proposed using byte code rewriting as a way of adapting or extending the behaviour Java classes. There are toolkits available that simplify this process and raise level abstraction above code. However, to best our knowledge, none these provide complete model behavioural reflection for Java. In paper, we describe how used load-time techniques construct run-time metaobject protocol can be adapt customise classes in more flexible abstract way. Apart from providing better semantic basis techniques, approach also has advantage over other reflective implementations it doesn't require modified compiler JVM, operate on rather than source cannot bypassed. paper implementation Kava, Java, discuss some linguistic issues technical challenges involved implementing such tool top standard JVM. Kava is http://www.cs.ncl.ac.uk/research/dependability/reflection.

参考文章(18)
Luiz Eduardo Buzato, Alexandre Oliva, The design and implementation of Guaraná usenix conference on object oriented technologies and systems. pp. 15- 15 ,(1999)
Satoshi Matsuoka, Takuo Watanabe, Akinori Yonezawa, Hybrid Group Reflective Architecture for Object-Oriented Concurrent Reflective Programming european conference on object oriented programming. pp. 231- 250 ,(1991) , 10.1007/BFB0057025
Gregor Kiczales, Jim Des Rivieres, Daniel G Bobrow, The Art of the Metaobject Protocol ,(1991)
Raju Pandey, Brant Hashii, Providing Fine-grained Access Control for Java Programs european conference on object oriented programming. pp. 449- 473 ,(1999) , 10.1007/3-540-48743-3_21
Ian Welch, Robert J. Stroud, Kava - A Reflective Java Based on Bytecode Rewriting conference on object oriented programming systems languages and applications. pp. 155- 167 ,(1999) , 10.1007/3-540-45046-7_9
David L. Kaminsky, Geoff A. Cohen, Jeffrey S. Chase, Automatic program transformation with JOIE usenix annual technical conference. pp. 14- 14 ,(1998)
R. J. Stroud, Z. Wu, Using Metaobject Protocols to Implement Atomic Data Types european conference on object oriented programming. pp. 168- 189 ,(1995) , 10.1007/3-540-49538-X_9
Ian Welch, Robert Stroud, From Dalang to Kava - The Evolution of a Reflective Java Extension Lecture Notes in Computer Science. pp. 2- 21 ,(1999) , 10.1007/3-540-48443-4_2
M. Benantar, B. Blakley, A. J. Nadalin, Approach to object security in distributed SOM Ibm Systems Journal. ,vol. 35, pp. 192- 203 ,(1996) , 10.1147/SJ.352.0192