
On Mon, Jun 16, 2008 at 4:07 PM, Evan Laforge
So, I know this has been discussed before, but:
1/0 Infinity 0/0 NaN
... so I see from the archives that Infinity is mandated by ieee754 even though my intuition says both should be NaN.
There is a good reason for 1/0 being infinity, as it allows correct programs to give correct answers even in the presence of underflow and overflow.
Every other language throws an exception, even C will crash the program, so I'm guessing it's telling the processor / OS to turn these into signals, while GHC is turning that off. Or something. But then what about this note in Control.Exception:
That's just not true. It depends on how your system (compiler?) is configured, but the default on most systems that I've used is to return NaNs. David