たけ(tk)です。

[ruby-list:35559] Re: Numeric#=== にて 
Tanaka Akira <akr / m17n.org> さん 曰く:
: > class Float
: >   def ==(v)
: >     (self - v).abs < Float.EPS
: >   end
: > end

EPS は self=1.0 の時の値なので、self 倍するべきでは?

class Float
  EPS = 2.2204460492503131E-16
  def ===(v)
    (self - v).abs < Float::EPS*self
  end
end

p a = 2**0.5
p a**2 === 2    #=> true

p a = 10**0.5
p a**2 === 10   #=> true

Take_tk = KUMAGAI Hidetake
たけ(tk)=熊谷秀武