What is a MetaObject Protocol?
RE01 Rice Brian T. EM2
BRice@vinson.navy.mil
Tue, 27 Oct 1998 12:47:01 -0800
>Could someone make a short summary of what is a MOP.
>It will be a nice idea to write this summary on the wiki (maybe on
>DesignTrends,
>WhatIsReflection).
>I know CommonLisp have one, that TinyClos is a small implementation of
>that in Scheme.
I don't know if my manner of terminology agrees with most of the Tunes
group's political opinions, but here's a stab:
A meta-object protocol is, simply stated, a set of rules for
manipulating and communicating with meta-objects. In other words, its a
meta-programming language, which the Lisp family of languages provides
rather simply (with the language itself). The Mjolner BETA system
provides another meta-programming environment that is still maturing.
Or you could say that it's the implicit meaning of meta-objects: what
the user can't control about meta-objects in systems which do not allow
Tunes-level (system-wide) reflection.
The intent of that explanation was to suck, so that some of the more
coherent writers here would write up something better, having seen my
poor attempt. ;)