[squeak-dev] Re: A criticism of the Nile paper (was Re: My view on Traits)

Andreas Raab andreas.raab at gmx.de
Tue Jun 3 21:59:34 UTC 2008

nicolas cellier wrote:
> Andreas Raab a écrit :
>> I mean that some of the basics of the Squeak stream hierarchy got put 
>> into place some twenty years ago and some assumptions simply changed 
>> over time. I would expect the same to be true for Nile, in particular 
>> if the quantitative reuse of traits is higher. For example, consider 
>> that a trait defines an operation that raises an exception (#next 
>> anyone? ;-) and that five years later you figured you were wrong and 
>> that you'd rather have it silently return nil. Can you fix that at 
>> this point? Seems *very* unlikely if those traits are widely used. So 
>> what happens is that every "new" user of that trait will start 
>> overwriting the method so you get into precisely the same situation as 
>> with the current collection hierarchy. It seems unavoidable in the 
>> long term that some of these issues will happen (and yes, "in theory" 
>> all of that is fixable but I'm talking about a practical situation).
> Hello Andreas,
> If you insist on it, yes, I must agree that answering nil at the end of 
> a Character Stream is a good trade-off and a simple lightweight 
> implementation.

I'm not insisting on *anything*. I'm making up an example where a 
reasonable person could come up with arguments either way and where -as 
time goes by- the arguments may way out differently. This had absolutely 
nothing to do with actual Stream>>next behavior; it had everything to do 
with the fact that there are good reasons for making it go either way. 
And no, I have absolutely no interest in discussing this issue and will 
stay out of any further discussion about what the "right" stream 
behavior is.

   - Andreas

More information about the Squeak-dev mailing list