From: "Damien Cassou" damien.cassou@gmail.com Reply-To: The general-purpose Squeak developers listsqueak-dev@lists.squeakfoundation.org To: "The general-purpose Squeak developers list"squeak-dev@lists.squeakfoundation.org Subject: Re: Enhancing squeak base classes Date: Wed, 7 Mar 2007 10:42:14 +0100
I do not use any tool but the standard OmniBrowser. I will try TraitOB soon but don't like the fact that it overrides lots of things and implements a new browser instead of enhancing the current one.
Ah, that has traits tools in it?
2007/3/6, J J azreal1977@hotmail.com:
I think it's more like the second solution but you will tell me. What I do is separating the different protocols that can be found in streams: one trait for reading behavior (#next, #peek, #skip:...), one trait for accessing postion (#position, #position:, #setToEnd, #reset...), one trait for writing... Then, I implement the classes that can be found in the base image. For example, ReadStream is a combinaison of reading behavior and accessing position (I renamed it ReadableCollectionStream).
Well it is hard to say, and perhaps Andreas' concerns that this is a feature that simply is too hard to get right are correct. What I would say is; if it makes sense as inheritance then it shouldn't be a trait. I.e. "Eq" (has a concept of equality) doesn't make sense as a class because of the kind of hierarchy results from making it so. Streams on the other hand, don't strike me as a hierarchy that would go too deep, and therefor might make more sense with simple inheritance. But I guess we will know soon enough. :)
_________________________________________________________________ Play Flexicon: the crossword game that feeds your brain. PLAY now for FREE. http://zone.msn.com/en/flexicon/default.htm?icid=flexicon_hmtagline