Computer Science – Programming Languages
Scientific paper
1998-10-29
Software - Practice & Experience 28, 10 (1998) pp 1045-1077
Computer Science
Programming Languages
25 pages. Source code for examples at http://www-ppg.dcs.st-and.ac.uk/Java/ReflectionExample/ Dynamic compilation package at
Scientific paper
Reflective systems allow their own structures to be altered from within. Here we are concerned with a style of reflection, called linguistic reflection, which is the ability of a running program to generate new program fragments and to integrate these into its own execution. In particular we describe how this kind of reflection may be provided in the compiler-based, strongly typed object-oriented programming language Java. The advantages of the programming technique include attaining high levels of genericity and accommodating system evolution. These advantages are illustrated by an example taken from persistent programming which shows how linguistic reflection allows functionality (program code) to be generated on demand (Just-In-Time) from a generic specification and integrated into the evolving running program. The technique is evaluated against alternative implementation approaches with respect to efficiency, safety and ease of use.
Kirby G. N. C.
Morrison Ralph
Stemple D. W.
No associations
LandOfFree
Linguistic Reflection in Java does not yet have a rating. At this time, there are no reviews or comments for this scientific paper.
If you have personal experience with Linguistic Reflection in Java, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Linguistic Reflection in Java will most certainly appreciate the feedback.
Profile ID: LFWR-SCP-O-17549