On Apr 17, 2009, at 12:21 AM, Ondrej Bilka wrote:
>>
> I can test normaly.
> irb(main):019:0> x=1.0/0
> => Infinity
> irb(main):020:0> y=-1.0/0
> => -Infinity
> irb(main):021:0> x==y
> => false

Well now you are creating a instance of -Infinity or Infinity in order  
to determine if another instance is equal to -Infinity or Infinity.

It is like suggesting that we don't need Fixnum#zero? or a literal 0,  
because you can always do:

def zero?
   self == (42 - 42)
end

Without a literal value for -Infinity or Infinity you have to  
construct the value before you can do the comparison--which was my  
poorly worded point.  You shouldn't have to construct the value for  
the comparison.  I was also suggesting that the tests, no matter how  
implemented, should be part of Float:

Float#negative_infinity?
Float#infinity?
Float#negative_zero?

Gary Wright