Physicist here. One who believes -2**2 is negative.
At 23:26 +0800 1/17/06, Audrey Tang wrote:
>Several options:
>- - Use whatever the underlying "num" semantics available

## Advertising

That's likely to be in hardware. It might even be hard to detect without
looking at the NaN returned and that would be a waste of time. Some formulas
can accept a NaN argument and still provide a correct result. At the worst they
return a NaN to be tested for later
>- - Always "fail"
>- - Always "die"
Those are non-conforming options See below.
>- - Specify them to return some definite value.
Only on a machine that doesn't do it in hardware or in some special perl
function that's unlikely.
>At this moment, Pugs defines them ad-hocly to:
>
> 0/0 == die "Illegal division by zero" <--- wrong. 1/0 should not
> die either.
> 0*Inf == NaN <--- reasonable but don't re-invent the NaN bit pattern
> Inf/Inf == NaN <--- reasonable but don't re-invent the NaN bit pattern
> Inf-Inf == NaN <--- reasonable but don't re-invent the NaN bit pattern
> 0**0 == 1 <--- Not indeterminate. Answer is correct.
> Inf**0 == 1 <--- Not indeterminate. Answer is correct.
> 1**Inf == 1 <--- Not indeterminate. Answer is correct.
<http://stevehollasch.com/cgindex/coding/ieeefloat.html>
<http://en.wikipedia.org/wiki/Divide_by_zero>
>The IEEE floating-point standard, supported by almost all modern processors,
>specifies that every floating point arithmetic operation, including division
>by zero, has a well-defined result.
I can't seem to find the actual assigned NaN bit patterns for the above cases,
<http://docs.sun.com/source/816-2465/iapgCreference.html>
is helpful but doesn't get there. There may be multiple inf/inf returns in some
cases depending on just which inf is involved. There are also NaN's for
functions implemented in hardware like atan and exp.
--
--> In Christianity, man can have only one wife. This is known as monotony. <--