The mystery of the tower revealed

Mitchell Wand, Daniel P. Friedman · 1986

In an important series of papers [Smith 82, 84], Brian Smith has discussed the nature of progrArrm which are allowed to have knowledge of their text and of the context in which they are executed.He called this kind of knowledge rsfl~tion.Smith proposed a progr*mming language, called 3-LISP, which embodied such self-knowledge in the domain of recta-circular interpreters.Every 3-LISP program is interpreted by a metacircular interpreter, also written in 3-LISP.This gives rise to a picture of an infinite tower of meta-circular interpreters, each being interpreted by the one above it.Such a metaphor poses a serious challenge for conventional modes of understanding of programming languages.In our earlier work on reflection [Friedman & Wand 84], we showed how a useful species of reflection could be modelled without the use of towers.During the question period following that presentation, Smith challenged us to extend our techniques to give a model of towers as well.In this paper, we meet this challenge by giving a semx_ntic account of the reflective tower.This account is self-contained in the sense that it does not employ reflection to explain reflection.

Read the paper · More papers on PaperTik