Meta-objects

Fare Rideau rideau@nef.ens.fr
Thu, 11 Dec 1997 14:37:29 +0100 (MET)


>: Basile STARYNKEVITCH

>     Fare> Objects do not evaluate self (no well-founded
>     Fare> theory allows that); rather, meta-objects evaluate objects
>     Fare> (the "ultimate" meta-object being the physical world). 
>                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> Ah bon!! ET tu implémentes ca comment? Dans mon esprit, il est
> nécessaire que la relation "est le méta de" soit cyclique (par exemple
> comme dans le modèle ObjVlisp) ou paresseuse (c'est à dire que le méta
> d'un objet soit de temps en temps évalué paressesement).
>
[approximate english translation]
< Uh!? And how do you implement that? AFAIK, the relationship from
< object to meta-object must be cyclic (as in the ObjVlisp model),
< or lazy (the meta-object been lazily evaluated).

I'd say that the contrary is true: for a meta-object based model to have
any meaning in our world, we must be able to break the cycle or the infinite
tower of meta-objects, so as to found an implementation of the objects in
our very world. Recursive constructs and lazy evaluation are indeed two
ways to do it. They sure are not the only ones.

Actually, efficient implementation of high-level objects means that at
some moment they be translated into something very low-level and near
the hardware, so that a "cyclic" reflective model where every "metalayer"
is (almost) the same as the other ones won't work. We need be able to
manage the heterogeneity between various aspects of programs. The pure
homogeneous circular reflection model a la 3-Lisp, for all it's worth,
doesn't buy it.

Abstract high-level objects are concretely implemented in terms of
more concrete lower-level objects, until they reach the level of silicon,
at which point it's no more a software, but a hardware problem
(and making the hardware run is the problem of man using the physical laws
of world; making those laws run is the problem of nature/God/whatever).

There is no reason why we should introduce a new "virtual machine" concept
that we'd consider absolute and then build over it a circular
meta-architecture without making the underneath accessible,
or we'd only end with countless abstraction inversions.
Full Reflection to me means being able to go down to the bare hardware
(and even let the computer "study" the laws of physics), if needed/wanted.
Mind that "being able to" is not quite the same as "having to", as
require current low-level languages.


== Faré -=- (FR) François-René Rideau -=- (VN) Уng-Vû Bân -=- rideau@ens.fr ==
Join a project for a free reflective computing system! | 6 rue Augustin Thierry
TUNES is a Useful, Not Expedient System.               | 75019 PARIS     FRANCE
http://www.eleves.ens.fr:8080/home/rideau/Tunes/ -=- Reflection&Cybernethics ==