Newsgroups: comp.lang.smalltalk
Path: cantaloupe.srv.cs.cmu.edu!europa.chnt.gtegsc.com!howland.reston.ans.net!news.sprintlink.net!mv!usenet
From: rapp@lmr.mv.com (L. M. Rappaport)
Subject: Re: Smalltalk terminology - Object, Class, and Instance
Message-ID: <DB3JHL.BJM@mv.mv.com>
Nntp-Posting-Host: lmr.mv.com
Sender: usenet@mv.mv.com (System Administrator)
Organization: MV Communications, Inc.
Date: Sun, 2 Jul 1995 19:08:57 GMT
References: <3shvfp$l9k@portal.gmu.edu> <3suu8h$26o@News1.mcs.net> <DB1pn6.BnE@mv.mv.com> <3t48n1$f53@ixnews4.ix.netcom.com>
X-Newsreader: Forte Free Agent 1.0.81
Lines: 35

lovejoya@ix.netcom.com (Alan Lovejoy) wrote:

>Your terminology confuses me, so I can't say whether your are correct
>or not.  Here is the graph of the "instance of" relation using (I hope)
>unambiguous terminology:

>    1. <Some object>, which is an instance of
>    2. <Some class>, which is an instance of
>    3. <Some metaclass>, which is an instance of
>    4. <The class Metaclass>, which is an instance of
>    5. <Metaclass class>, which is an instance of
>    6. <The class Metaclass>--and the last two relation targets are
>endlessly repeated as the "instance of" relation is followed from this
>point.

>One interpretation of your list is missing relation target 6--in which
>case, your graph is merely incomplete.  Another interpretation is
>missing relation target 3--in which case your graph is wrong.

I think the sticking point is this:  My understanding (I swear I read
this somewhere, but I can't find it now) is that there is exactly one
class metaclass which has exactly one object metaclass from which all
metaclass classes are derived.  My recollection is that it is done
that way to avoid infinite recursion.  This disagrees with your number
6 above.  

I'll try to dig out my reference - it might be specific to the
Digitalk or some other specific Smalltalk implementation.  IAC, it
seems like splitting hairs when you are at that abstract a level.  If
you're not a language designer, of what use is the CLASS metaclass or
it's instance?

Larry
--

