[Haskell-cafe] NaN, Infinity literals
bertram.felgenhauer at googlemail.com
Thu Sep 7 05:18:07 EDT 2006
Tamas K Papp wrote:
> Is there a way to use NaN and Infinity as literals, or at least to
> test if a value is NaN or Infinity?
> *Main> let nan=0/0
> *Main> nan
> *Main> nan==0/0
This is correct according to the IEEE 754 standard, which defines
that NaN compares unequal to everything, including itself.
You can test the numbers using the isNaN and isInfinite functions.
Incidentally, one can define
isNaN x = x /= x
for IEEE floating point numbers. Comparing with +Infinity and
-Infinity works as expected.
More information about the Haskell-Cafe