On Tue, 21 Oct 2003, Leopold Toetsch wrote: > Dan Sugalski <[EMAIL PROTECTED]> wrote: > > After thinking about this a bit, it became glaringly obvious that the > > right way to instantiate an object for class "Foo" is to do: > > > new P5, .Foo > > > Or whatever the constant value assigned to the Foo class upon its creation > > is. When a class is created, it should be assigned a number, and for most > > things PMC-only classes or full-on HLL classes should behave identically. > > Yep. The question does arise, if which range class enums are? Intermixed > with enum_class_<pmc> numbers?
Yes, intermixed. I added support a while back to pass in the class number to a PMC class being initialized for this very reason. The compiled-in PMCs get fixed numbers at the beginning because it's easiest, and things get referenced symbolically from there. > And - what about: > > typeof S0, P0 <=> classname S0, P0 > > (IMHO the HLL compiler can't always know, which op to use) At this point they're the same thing, I think. I'll need to think on it a bit. > And the classname of objects vs the classname of classes (the classname > PMC is in different array slots). Last I knew there was something of a fight over what class a class is in. At the moment I'm going to ignore the heck out of things and let the language folks fight over it some more. Dan