[squeak-dev] Re: printing collections

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Tue Nov 3 21:06:19 UTC 2009


2009/11/3 Andreas Raab <andreas.raab at gmx.de>:
> Nicolas Cellier wrote:
>>
>> While at isSelfEvaluating, I wonder why we do not abuse {..} notation
>> a bit more.
>> Instead of printing 'aSet( 0 at 0 1 at 2 )'
>> we could just make it evaluate proof '{0 at 0. 1 at 2} asSet'
>>
>> Of course, with limited stream, we take the risk of loosing trailing '
>> asSet' information.
>> So we can also print using a less nice but still evaluating 'Set
>> newFrom: {0 at 0. 1 at 2}'.
>>
>> As a bonus, generalizing this behaviour might also eliminate a few
>> bytecodes and methods from the Kernel.
>>
>> Same for storeOn:
>>
>> What do you think ?
>
> -1. The goal of printing isn't to make parsing easier. In fact I find this
> to be the least useful application of {} - the advantage of the syntax form
> is that it is immediately recognized and consequently requires less effort
> than having "an Array(". That you can also evaluate it in some situations is
> a useful side effect but no more.
>
> Cheers,
>  - Andreas
>

OK, I see ' newFrom: ' can be considered as noise, so we can't have
our cake and eat it too ?
I find the fact that simple objects print as a simple code snippet
such a nice feature though...
Set << {0 at 0. 1 at 2} would be short, but I guess introducing a new binary
selector will be hard to sell :)

Nicolas



More information about the Squeak-dev mailing list