On Sun, Oct 22, 2006 at 11:38:10PM +0200, Leopold Toetsch wrote: > Am Sonntag, 22. Oktober 2006 20:56 schrieb Patrick R. Michaud: > > > I strongly disagree. I don't think that a subclass should have to > > be named as a sub-namespace of its parent class. > > Namespace and classes are currently totally orthogonal. You are declaring a > subclass (not a sub-namespace) with all the implications for naming it.
Okay, I'll rephrase to avoid the classname/namespace confusion(*): I don't think that a subclass' name should have to include the names of its parent classes. From your earlier message: On Sat, Oct 21, 2006 at 07:10:21PM +0200, Leopold Toetsch wrote: > IMHO this should look like this: > > .HLL 'pge', '' > ... > cl = newclass 'Exp' # ['pge'; 'Exp'] > ... > .namespace ['Exp'] # ['pge'; 'Exp'] > ... > scl = subclass 'Exp', ['Exp'; 'Closure'] # ['pge'; 'Exp'; 'Closure'] > ... It's the ['Exp'; 'Closure'] that bothers me here -- I don't think that a subclass should have to include the name of its parent in the class name. It should be: scl = subclass 'Exp', 'Closure' # ['pge'; 'Closure'] However, writing either this or scl = subclass 'Exp', ['Closure'] # ['pge'; 'Closure'] gives me the "class Closure already registered" error that started this thread. ----- (*): AFAICT, it's also not true that classnames and namespaces are "currently totally orthogonal", since the class' methods have to be placed in a namespace that matches the classname. So, a class named [ 'Exp'; 'Closure' ] must place its methods in a [ 'Exp'; 'Closure' ] namespace. Pm