> irb> B = a > B > irb> x > #<B:0x40269058> > irb> A = a > B > > What you must understand is that A and B make reference to the *same* > class, this is like if you have created an alias. > > It's not important that a.name give "A" or "B" because this is the same > class. Yup. I did my ``thorough thinking'' Since a class is just an instance of Class, it does not matter how many references there are, nor /should/ it matter what type of references those are. The name of a class should be (according to my taste) something to help a human understand what the class hierarchy is. When you do not need a name, use an anonymous class. No problem here. If the name of a class turns out to be a String that depends on whether a global reference (global constant) exists, I do not think that supports my remark about human understanding. At the very least, the method name "name" is confusing. Back to the original topic: All of this does not appear to be any argument against having Class.new(nameOrSymbol=nil, superClass=Object) as far as I can tell, even if you demand that a classname starts with a capital. Bye, Kero. +--- Kero ------------------------------ kero / chello.nl ---+ | Don't split your mentality without thinking twice | | Proud like a God -- Guano Apes | +--- M38c ------------------ http://huizen.dds.nl/~kero ---+