On 10.10.2008, at 14:30, Stéphane Ducasse wrote:
I had a look and I like it, so I'll try to make your tests pass ;).
I don't agree with the following, though:
self assert: (D>>#c3) origin = D. "this is a question because it could be "
here I think it should be Trait2, not D. The alias c3->c2 does not redefine the method in the class; the method still originates in Trait2.
Not really :) we discussed a lot with marcus and I think that I have a point :) the point is that since Compiled Method are copied
But even non-aliased methods are copied...
so c3 is really different from c2 and c3 is not defined in Trait2 but this is realy because there is D that C3 exists. so tell me what you think.
The problem with making the origin D is that then the relationship "all methods that have the origin class D are local methdos in class D" is not true anymore. I think it is more important to have this true for classes then for Traits. Marcus -- Marcus Denker -- denker@iam.unibe.ch http://www.iam.unibe.ch/~denker