Stefs roadmap for 3.9, time to get it nailed down

stéphane ducasse ducasse at iam.unibe.ch
Sat Feb 26 16:04:51 UTC 2005


>
> I assume that you mean this other structure is or could be built of 
> ordinary Smalltalk and for such cases Traits is used only as a 
> "thinking-help" in a two-tiered development process:

no traits are structuring entity there are between class and methods. 
They are a building block. Because classes
as instance creator should be concrete and complete they offer a too 
big abstraction, hence make reuse difficult.
And traits plays this role. They represent intermediate abstractions 
from which class can be build and support the reuse
because can be reused among different classes.

>
> 1) Do it with Traits
> 2) At many places, traits are indications that you have done something 
> wrong. Do it differently (without using traits).

I do not believe in the second point. Again this is pure theory: show 
us a concrete example.
If you have to reuse an abstraction over different hierarchies then 
normally you wrap and delegate or copy and paste, with traits you 
reuse.

I really do not see why reusing an abstraction would mean that you are 
doing something wrong.

> Interesting, but a bit indirect :) and as I said perhaps people are 
> not aware of the second part. Thinking abstractly I am really unsure 
> if this   is an argument in favor of Traits, it looks like being able 
> to use a trait may put you on the wrong trail.
>
> Regards,
> Martin
>
>




More information about the Squeak-dev mailing list