next up previous
Next: Introduction

A Tutorial on Behavioral
Reflection and its Implementation

J. Malenfant, M. Jacques and F.-N. Demers 1
Département d'informatique et recherche opérationnelle,
Université de Montréal, Montréal, Québec, CANADA

 

Abstract:

The efficient implementation of behaviorally reflective languages imposes a formidable challenge. By definition, behavioral reflection allows a program to modify, even at run-time, its own code as well as the semantics and the implementation of its own programming language. This late-binding of the language semantics favors interpretive techniques, but compilers are absolutely necessary to make reflective languages efficient and therefore of real interest. The goals of this tutorial are: (1) to give the picture of the state of the art in the efficient implementation of behavioral reflection, (2) to review the main issues in going from interpreter-based to compiler-based implementations and (3) to propose new avenues towards the realization of this objective. Our tutorial is aimed at a large audience of reflective language implementors, in either object-oriented, functional or even logic programming. To make our point widely applicable, we avoid fine-grain technicalities. Rather we emphasize the common denominator of all reflective languages, we propose a clear and general problem statement, and we set up a wide-ranging research agenda.



 
next up previous
Next: Introduction
Matt Hurlbut
1998-07-02