When are 2 CompiledMethods = [incl: Float>>nan]

Bert Freudenberg bert at freudenbergs.de
Sun Sep 9 19:00:35 UTC 2007


+1 on reverting Association>>=

- Bert -

On Sep 9, 2007, at 11:26 , Andreas Raab wrote:

> Hi Klaus -
>
> Revert Association>>= to what it used to be and everything will be  
> fine (Association>>= is really, really badly broken; it causes  
> problems all over the places and this is one of them).
>
> Cheers,
>   - Andreas
>
> Klaus D. Witzel wrote:
>> Hi,
>> Math and I discuss comparing two CompiledMethods whether or not  
>> they represent the same object when compiled from source. This is  
>> necessary for writing tests for the Decompiler.
>> One of the obstacles are certainly the methods' literals, in  
>> particular Float>>#nan which have to be treated equal in the two  
>> compared methods, regardless of the fact that (Float nan = Float  
>> nan) == false :)
>> Are there other cases which should be considered, for example does  
>> someone expect that Float>>#closeTo: is used for comparing Float  
>> literals of two methods? If that's not the case then Float  
>> literals other than nan, can be compared with good old fashioned #=.
>> FWIW the two methods could have been compiled by different  
>> compilers and/or have literals (for example in class vars) created  
>> by different readers (think of Number#>>readFrom:), makes writing  
>> tests for the Decompiler not that easy :|
>> TIA.
>> /Klaus
>> On Sat, 08 Sep 2007 17:30:37 +0200, Alejandro F. Reimondo wrote:
>>>
>>>> Ok any reason for that?
>>> Yes. "nan" is not an object (it does not preserve identity),
>>>  it is something that can be named and that preserve
>>>  behavior (we can draw/attach an interface for/to it),
>>>  those properties does not make it an object.
>>>
>>> Ale.
>>>
>>>
>>>
>>> ----- Original Message ----- From: "Mathieu Suen"  
>>> <mathk.sue at gmail.com>
>>> To: "The general-purpose Squeak developers list" <squeak- 
>>> dev at lists.squeakfoundation.org>
>>> Sent: Saturday, September 08, 2007 9:48 AM
>>> Subject: Re: Float>>nan
>>>
>>>
>>>> Ok any reason for that?
>>>>
>>>> Mth
>>>>
>>>>
>>>>
>>>> On Sep 8, 2007, at 12:24 PM, Lukas Renggli wrote:
>>>>
>>>>>> I have a strange bug:
>>>>>>
>>>>>> Float nan = Float nan -> false
>>>>>
>>>>> According to the standard NaN is not be equal to anything,   
>>>>> including itself.
>>>>>
>>>>> Check: http://en.wikipedia.org/wiki/IEEE_754
>>>>>
>>>>> Lukas
>>>>>
>>>>> -- Lukas Renggli
>>>>> http://www.lukas-renggli.ch
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>
>





More information about the Squeak-dev mailing list