[squeak-dev] My view on Traits

stephane ducasse stephane.ducasse at free.fr
Thu May 15 19:55:12 UTC 2008


Hi Igor

Thanks. Apparently I got 300 emails blocked somewhere. I thought I was  
not in the mailing-list anymore.
So I will summarize all the emails in this one:

About traits:
	- I would love to see if we can get a simpler, loadable on demand BUT  
ROBUST implementation of traits.
	I will have a look at Andreas code. Thanks for that.
	- I'm not sure that sharing method is a good idea.
	- I'm not sure that the tradeoff introduce traits is worth but if do  
not try it how can we learn.
		for traits in the kernel: there is duplicated code in the kernel, so  
it was natural to try.
	We designed especially traits to be backward compatible so that we  
can learn and still can backtrack if not needed/bad/idiot/stupid.
	- It seems to me that the Smalltalk spirit of inventing the future is  
lost in Squeak.
	May be should wait for Newspeak and leave there...
	- We will work on adding state to traits (not following the design of  
stateful traits because too complex for nothing).
	I like a lot when people think that we are "researchers" you know the  
guys that don't give a shit and do not know what is
	real development with balls. Seriously there are a **lot** of cool  
experiences we did (changesbox, classboxes....) and we
	never even think about to put them in a language. Why we did it for  
traits, because it was simple, backwards compatible,
	and good. Now this is clear that it introduces noise and you have to  
choose between traits and subclass and you have to
	fix the tools. I wish we would be with a language that does not have  
an IDE. But we are serious about
	our meta-concerns, we are eating our own dog food.
	- I'm convinced after the experience with nathanael on collection and  
damien on stream that traits are good.
	- We will run a new large analysis and build a new collection  
hierarchy (if I get funding) from september.
	- I find a bit strange that people gets so annoyed by traits when  
they can ignore them.
		- looks at lukas with Seaside: it does not use them and do not see  
them.
		- now if the people really against traits would make real arguments  
like (the reflective interface is not
		good enough when I use selector I get all the selector and this is  
not clear how to get the local one
		versus the traits one.... and you can find other examples)
	- Instead of bashing traits, try to use them. The OB version of david  
rotlisberger is supporting traits.
	- There are a lot of work to do to get a better Squeak (see my  
previous email when I gave such a list to Edgar).

Stef



On May 15, 2008, at 6:33 PM, Igor Stasenko wrote:

> Traits is major feature added since 3.9. And i think it should STAY.
> I don't see any good reason, why next releases should not support  
> traits.
>
> Instead of thinking about, how to get rid of them, i think we should
> think about, what in traits implementation prevents people from
> loading code based on 3.8 without much stress, and based on this
> knowledge, refactor traits to be more compatible with other
> non-traitified code.
>
> But they should stay!
>
> -- 
> Best regards,
> Igor Stasenko AKA sig.
>
>




More information about the Squeak-dev mailing list