From: Pit Capitain Date: 2007-02-19T01:18:00+09:00 Subject: Re: More flexible inheritance George Ogata schrieb: > The problem to my eyes is that they're not equivalent. > > The former is still required when you want to redefine an existing > method in a class, often one you didn't write yourself. If you change > the former to mean the latter, does that mean we can't redefine > methods like that? George, I'm not Tom, but I think that for redefining a method, instead of class X def a; "a2"; end end internally you would do something like X.ancestors[ 1 ].module_eval { def a; "a2"; end } Everything you would do with class X in normal Ruby you would do to the anonymous module being the first in the ancestors chain. Regards, Pit