The concept of computational reflection has been studied for a long time. In the last few years, in particular since the emergence of object-oriented languages, reflection and the associated conceptintrospection, have been studied with some intensity. The reason for this is that the two concepts promise to give us more flexible languages which can be extended to suit an application’s needs more closely. They also allow the introduction of new features such as distribution and parallel execution with less disruption than is normal. Furthermore, these two concepts give programmers access to the internals of programs, thus facilitating the construction of debuggers and profilers. Finally, introspection gives access to the execution mechanism itself, thus permitting programs, at least in principle, to adjust the way in which they are executed. It should be noted that the terms reflection and introspection are often used in an interchangeable manner.
KeywordsAbstract Syntax Meta Object Meta Class Inheritance Hierarchy Inheritance Structure
Unable to display preview. Download preview PDF.