From: ts Date: 2005-05-01T19:25:23+09:00 Subject: Re: arg, metaclass bug found? >>>>> "R" == Robert Klemme writes: R> Well, yes, that's what I concluded. But why is that so? What's the R> reasoning behind this? After all, both singleton classes are just there for R> a single object although that happens to be a class instance. This change R> might even break some code, I'm not sure. Well, I've tried one day to give a *STUPID* example Imagine that you have class Class def new(*args, &block) obj = allocate obj.send(:initialize, *args, &block) obj end end class Array def self.allocate # do some magic here to create the type array end end Now if you write class A < Array end A.new You want with `A.new' re-use the method ::allocate which is defined in the singleton class (Array). This mean that (A) must inherit from (Array) Guy Decoux