On 17.03.2009 12:33, James Coglan wrote:

> By the way, I just noticed this:
> 
>>> module M; end
> => nil
>>> class A; end
> => nil
>>> class B < A; end
> => nil
>>> B.ancestors
> => [B, A, Object, Kernel]
>>> A.send :include, M
> => A
>>> B.ancestors
> => [B, A, M, Object, Kernel]
> 
> That is, adding a module to an ancestor class affects the descendants. This
> could be seen as an inconsistency in Ruby's design, depending on how you
> think about classes and modules and how they are implemented. In my
> implementation everything inheritance-related is handled using modules so I
> would need to add a bunch of special cases to handle some of the asymmetries
> pointed out here.

Good point!  Still the question remains, how often is this used and who 
would benefit from that change (and what is the price)?

Cheers

	robert


-- 
remember.guy do |as, often| as.you_can - without end