Why NOT NaN? What else? _ embraces numbers of vastly different sizes.
aleph-0%aleph-1 is 0, aleph-1%aleph-0 is _, and (who knows?) there could
be values in between. Here NaN means 'unknown'. In other cases it
means 'unrepresentable'.
The standard specifies a number of operations that generate NaN:
https://en.wikipedia.org/wiki/NaN#Operations_generating_NaN
J treats some of these, but not all, as NaNs.
Henry Rich
On 11/19/2015 1:11 AM, Don Kelly wrote:
How is this "why" ? it appears that all it does is substitute a number
(in this case 1) rather than have NaN. I can see this as a way to
avoid a NaN error by flagging it without stopping execution.- not as
an explanation for the NaN using __%__
*ff=: % :: 9:*
__ ff __
9
3 ff 2
1.5
also works with
*ff2=: - :: 9:*
__ ff2 __
9
4 ff2 1
3
Don
On 11/18/2015 8:28 PM, Linda A Alvord wrote:
Here's why...
f=:0:@% ::1:
_ f _
Linda
1
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Raul
Miller
Sent: Monday, November 16, 2015 1:46 PM
To: Programming forum
Subject: Re: [Jprogramming] Why is subtraction and division of
rational numbers so hard?
You might also like to see:
L=:(-_),(-2%~1-~%:5),0,(2%~1-~%:5),_
0:@% ::1:"0/~ L
1 0 0 0 1
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
1 0 0 0 1
Thanks,
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm