W3C home > Mailing lists > Public > www-webont-wg@w3.org > March 2002

Re: LANG: classes as instances

From: Lynn Andrea Stein <lynn.stein@olin.edu>
Date: Thu, 21 Mar 2002 15:30:02 -0500
Message-ID: <3C9A42CA.A4D58A43@olin.edu>
To: "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>
CC: schreiber@swi.psy.uva.nl, www-webont-wg@w3.org
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 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:57:48 GMT