Re: LANG: classes as instances

Actually, if you believe in metaclasses (i.e., classes whose members are
classes), then it makes perfect sense for something to be simultaneously
a class and an instance.  This is something that has significant
acceptance among at least a few subcommunities of OOP and KR:

Cyberdyne's OOFAQ gives a nice overview of metaclasses [1] in OOP terms.

Some more classic OOP references include Brian Cantwell Smith's
foundational paper on reflection and Kiczales et al.'s metaobject
protocol (for CLOS).

The Smalltalk [4] and Java [5] programming languages both have
metaclasses, though in somewhat different forms.

In more KR terms, Protege [6] has a metaclass system.

Lynn

[1] http://www.cyberdyne-object-sys.com/oofaq2/body/basics.htm#S1.4
[2] Brian Cantwell Smith, "Reflection and Semantics in Lisp," POPL 1984,
pp 23-35.
[3] Kiczales, G., J. des Rivi`eres, and D. G. Bobrow, The Art of the
Metaobject Protocol. The MIT Press, 1991.
[4] http://www.smalltalk.org/
[5] http://java.sun.com/
[6] http://protege.stanford.edu/

Received on Thursday, 21 March 2002 15:30:09 UTC