From: Yukihiro Matsumoto Date: 2007-02-22T11:01:01+09:00 Subject: Re: More flexible inheritance Hi, In message "Re: More flexible inheritance" on Thu, 22 Feb 2007 02:43:14 +0900, "Trans" writes: |On Feb 19, 3:04 am, Yukihiro Matsumoto wrote: | |> What is the benefit of by this change? | |The benifits are more robust means of extension b/c | | 1) mixins can be used for extensions | 2) mixins are much more flexible and elegant than open/alias/redefine | 3) no longer need to fuss with alias names or method binding | 4) we would no longer require alias (which is a keyword) | 5) lends itself to future possiblities such as uninclude | 6) promotes better design and way of thinking whereby | a class is a collection of "bahaviors" (sub your prefered term) I think I get the picture .. gradually. Interesting. Can you be more specific about the suggestion, for example, for the code class Foo < Object def foo end end class Foo def bar end end what would happen? Can we access appending anonymous mixin module? |another topic worth consideration, but selector namespaces are a |different animal I think --well, unless we can dynamically activate |and deactive the mixin modules depedning on the namespace we're in, |then namespaces could be based on these. Hmm...that's a cool idea, but |I suspect it would require a major overhaul in how Ruby works under |the hood. Sure it is. But I suspect this proposal is nearly as huge as selector namespace for language change, although implementation is far easier. matz.