[Q] MetaClass>>name

Ian Piumarta ian.piumarta at inria.fr
Sun Feb 23 03:43:20 UTC 2003


On Sun, 23 Feb 2003, Daniel Vainsencher wrote:

> Anyone know a good reason why Class>>name returns a symbol

The name of a class is the Symbol on which it is keyed in the
SystemDictionary.

> , but MetaClass>>name returns a string?

A Metaclass doesn't have a name.  It is known only by the expression which
generates a reference to it, viz 'MyClass class', and that's what's
returned by any Metaclass when you ask for its name.  It makes no sense to
intern the string (to make a Symbol of it) since it isn't used as a key
anywhere.

> It causes me a little mess in SpaghettiTracer...

Couldn't you convert all names to Strings (and then avoid any identity
assumptions as appropriate)?

Ian



More information about the Squeak-dev mailing list