Tunes core existed in 1991
Paul Dufresne
dufrp@oricom.ca
Wed, 25 Aug 1999 14:04:45 -0400
He he he, I admit this subject is to gather attention.
But that's not really a lie either.
Reading "A Lisp Through the Looking Glass" at
http://www.cb1.com/~john/thesis/thesis.html I really have the feeling
of someone explaining his Tunes implementation.
Actually I just finished the Introduction (Chapter 2 of 15) and so I
can't give much details on the how. But it's about writing a
meta-evaluator for a reflective tower of evaluator, where each
evaluator in the tower, evaluate the program under it (an evaluator
for the program under it). Well, I hope I am right but it's not
a problem if I am wrong because you will read it by yourself. :-)
Up to now in my reading, I can say it's explaining quite well
the concept of reification and reflection, that we often call
both reflection. Just that would make it a good reading.
Now, an interpreter is the combination of a language description
and an evaluator.
I have read between the lines, that by having reifier operators
parametrized by a language description, and using this reflective
tower, he have been able to do an implementation (Platypus) able
to let you mixed languages. Quite what I understood as being the
core of Tunes.
Now the concept of a reflective tower go back to Smith in 1982
according to this. So I guess it is not much new in itself.
As far as I know, the Metakit also have such a reflective tower.
(That would be cool that someone having a Mac tried this
Metakit and do some comments about it.)
But I guess this thesis goes much on the line of what Tunes is
looking for, that is a reflective environment to evaluate many
programming languages. Maybe there is other stuff since 1991 that
are even closer of what of Tunes want, but somehow I doubt it.
So, the question I will probably ask is, why not just go in
using this work?
Paul Dufresne