On Tue, Oct 25, 2005 at 01:57:52PM -0400, Rob Kinyon wrote:
: I'm assuming that when you allow
: 
:     my ¬ĘT := sometype();
: 
: you're also allowing
: 
:     my class T := sometype();

Yes, that's the idea.

: So, what happens when stupid me names a class "class" through
: symbol-table craziness?

How much class could a class class class if a class class could class class?

What happens is either that you have to say "class class" or "¬Ęclass"
or you redefine the "class" keyword to something else like "frobnitz".
I think "class" and "sub" are keywords in the, er, class of things
that trump mere symbol table entries.  Either that, or "class" is merely
the name of the metaclass, and you'll get a class collision when
you try to redefine it.  But I expect "class" is really a declarator
of the same status as "sub", at least syntactically.

Larry

Reply via email to