Browse by author
Lookup NU author(s): Ian Welch, Dr Robert Stroud
Full text for this publication is not currently held within this repository. Alternative links are provided below where available.
Current implementations of reflective Java typically either require access to source code, or require a modified Java platform. This makes them unsuitable for applying reflection to Commercial-off-the-Shelf (COTS) systems. The high level nature of Java bytecode makes on-the-fly rewritings of class files feasible and this has been exploited by a number of authors. However, in practice working at bytecode level is error prone and leads to fragile code. We propose using metaobject protocols in order to specify behavioural changes and use standard bytecode rewritings to implement the changes. We have developed a reflective Java called Kava that provides behavioural runtime reflection through the use of bytecode rewriting of Java classes. In this paper we discuss the binary rewriting approach, provide an overview of the Kava system and provide an example of an application of Kava.
Author(s): Welch IS, Stroud RJ
Editor(s): Cazzola, W., Stroud, R.J., Tisato, F.
Publication type: Conference Proceedings (inc. Abstract)
Publication status: Published
Conference Name: 1st OOPSLA Workshop on Reflection and Software Engineering (OORaSE)
Year of Conference: 2000
Pages: 155-167
ISSN: 0302-9743 (Print) 1611-3349 (Online)
Publisher: Springer-Verlag
URL: http://dx.doi.org/10.1007/3-540-45046-7_9
DOI: 10.1007/3-540-45046-7_9
Library holdings: Search Newcastle University Library for this item
Series Title: Lecture Notes in Computer Science
ISBN: 9783540677611