On Jun 12, 2006, at 5:09 AM, Daniel Schierbeck wrote:

> I'm wondering why it's not possible to #include a class into a  
> module/class -- making the only difference between classes and  
> modules the ability to instantiate (#allocate). That way, you could  
> do something like this:
>
>   class Module
>     def included(mod)
>       mod.extend(class << self; self; end)
>     end
>   end
>
> i.e. extend the receiver with the methods and constants of the  
> singleton class. It sure would make this whole problem a lot easier  
> to solve, and avoid those pesky hacks we're all but fond of.

Then you have multiple inheritance.