lukas 

can you open an issue on the pharobug tracker.
Because I still dream about a nice and clean world so we could start to slowly 
spot the place
and rewrite slowly. 61 is that many :)

Stef

On Dec 16, 2009, at 6:44 PM, Lukas Renggli wrote:

>> :) :)  This is funny.  VisualWorks has exactly the same bug^H^H^Hfeature.
>>  And if you look at the ANSI standard (ok, this is from the draft, but it is
>> essentially the actual document) there is an exception for precisely this
>> case,  See the last sentence in section 3.4.4 Blocks:
>> 
>> If a block has no <block body> or no <statements> in its <block body> then
>> the value of the block is undefined.
> 
> Ok, I did not check that document. I somehow expected that all empty
> blocks would return nil.
> 
>> Which allows [] to be implemented as e.g. [Random new next].  In fact both
>> VisualWorks and Squeak answer the last argument:
>> [:a ] value: 1 1
>> [:a :b|] value: 1 value: 2 2
>> [:a :b :c :d :e :f :g :h| ] valueWithArguments: (1 to: 8) 8
>> [:a | nil] value: 1 nil
>> [:a :b| nil] value: 1 value: 2 nil
>> At least it is consistent whether the block is inlined or not ;)
>> 1+2 ifNotNil: [:arg|] 3
>> It as ever been so.
> 
> Thank you for the additional insight. I learned something new on the
> Smalltalk semantics today :-)
> 
> I will fix my code then.
> 
>> P.S.  I'm caught between wanting to fix it and wanting to let sleeping dogs
>> lie.  I'd like to know what all the other dialects do.  If a substantial
>> majority have the same curio I think we have to live with this, uh,
>> ornament.  Just to be clear, making it a preference is a sick joke on my
>> part.
> 
> I think we'd better let it sleep. In my image I have 61 empty blocks
> with one or more argument. Some of them might depend on that hidden
> behavior.
> 
> Lukas
> 
> -- 
> Lukas Renggli
> http://www.lukas-renggli.ch
> 


_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to