Re: [Bug-apl] Hang in Residue

2018-01-10 Thread Jay Foad
The results look pretty good to me now. Thanks! On 9 January 2018 at 20:44, Juergen Sauermann wrote: > Hi Jay, > > I've done a complete rework of the residue function for real arguments. > The implementation follows the ISO standard almost literally. *SVN 1037*. > > /// Jürgen > > > On 01/08/201

Re: [Bug-apl] Hang in Residue

2018-01-09 Thread Juergen Sauermann
Hi Jay, I've done a complete rework of the residue function for real arguments. The implementation follows the ISO standard almost literally. SVN 1037. /// Jürgen On 01/08/2018 02:19 PM, Jay Foad wrote: Yes, th

Re: [Bug-apl] Hang in Residue

2018-01-09 Thread Jay Foad
Sure: I would expect that the values I've highlighted in red below should all be zero. The other results are all OK as far as I know, though I haven't scrutinised them carefully. I'm just saying that GNU APL doesn't seem to be following this particular rule from the ISO standard: "If Z is A , retur

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Xiao-Yong Jin
It's a waste of time to make modulo exact for inexact floating point numbers. People should expect round off errors in those cases. Until GNU APL have multi-precision numbers, it is pointless to make modulo exact for inexact numbers. Asking for exact result with something like (1E200+⍳

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Alexey Veretennikov
Hi, Probably this could be of help: http://www.softelectro.ru/ieee754_en.html Elias Mårtenson writes: > I can't easily find the document online without having to pay for it, but > doesn't the Wikipedia > page contain all the information you need? > https://en.m.wikipedia.org/wiki/IEEE_754 >

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Juergen Sauermann
Hi Elias, the ISO APL standard says: "Note: The implementation-algorithm P modulo Q provides an exact modulo operation for realnumbers P and Q. It evaluates R←B-(×B)×|A×⌊|B÷A and return R if (×A)=×B or R+A otherwise. The definition of

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Elias Mårtenson
I can't easily find the document online without having to pay for it, but doesn't the Wikipedia page contain all the information you need? https://en.m.wikipedia.org/wiki/IEEE_754 On 9 Jan 2018 12:14 am, "Juergen Sauermann" wrote: > Hi Jay, > > I am still puzzled by the ISO description (and can'

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Juergen Sauermann
Hi Jay, I am still puzzled by the ISO description (and can't find the "IEEE standard for Binary Floating-Point Arithmetic (754)" referenced in the standard. Would you be able to provide the expected expected output of your example below?

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Jay Foad
Yes, thanks! Now, when ⎕CT=0 there are some odd results: ⎕CT←0 A←(-⌽A),0,A←1e¯200 1e¯100 1 1e100 1e200 A∘.|A 0E0 ¯1E100 ¯1E0 ¯1E¯100 ¯1E¯200 0 0E00E0¯1E200 0E0 0E0 0E00E0 ¯1E0 ¯1E¯100 ¯1E¯200 0 0E00E0¯1E100 0E0 0E0 0E00E00E0 ¯1E¯100 ¯1

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Juergen Sauermann
Hi Jay, maybe SVN 1036 works better. /// Jürgen On 01/08/2018 01:02 PM, Jay Foad wrote: Thanks. With r1035 I get:       A←(-⌽A),0,A←1e¯200 1e¯100 1 1e100 1e200       A∘.|A  

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Jay Foad
Thanks. With r1035 I get: A←(-⌽A),0,A←1e¯200 1e¯100 1 1e100 1e200 A∘.|A 0E00E00 0E0 0E00 0E00E00 0E0 0E0 0E00E00 0E0 0E00 0E00E00 0E0 0E0 0E00E00 0E0 0E00 0E00E00 0E0 0E0 0E00E00 0E0 0E0

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Juergen Sauermann
Hi Jay, thanks, fixed in SVN 1035. BTW tryapl.com gives this: A←1E¯200 1E200 ¯1E¯200 ¯1E200 A ∘.∣ A 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 /// Jürgen   TOn 01/08/2018 10:29 AM, Jay Foad wrote: Thanks. At r1034 I ge

Re: [Bug-apl] Hang in Residue

2018-01-08 Thread Jay Foad
Thanks. At r1034 I get: A←(-⌽A),0,A←1e¯200 1e¯100 1 1e100 1e200 A∘.|A DOMAIN ERROR And here's one of the cases that fails: 1e¯200|1e200 DOMAIN ERROR This still seems wrong to me, since the ISO standard for Residue says "Implementations should avoid signalling limit-error in re

Re: [Bug-apl] Hang in Residue

2018-01-06 Thread Juergen Sauermann
Hi, thanks, fixed in SVN 1029. /// Jürgen On 01/05/2018 04:37 PM, Jay Foad wrote: Yes, that _expression_ hangs on my Linux box too. It gets stuck here: FloatCell::bif_residue (this=0x55

Re: [Bug-apl] Hang in Residue

2018-01-05 Thread Jay Foad
Yes, that expression hangs on my Linux box too. It gets stuck here: FloatCell::bif_residue (this=0x55ae13a8, Z=0x55ae24f8, A=0x55ae11d8) at FloatCell.cc:643 643 while (z < 0.0)z = z + a; (gdb) p z $1 = -inf (gdb) p a $2 = 9.9998e-201 Jay. On 5 January

Re: [Bug-apl] Hang in Residue

2018-01-05 Thread Xiao-Yong Jin
1e¯200|1e200 hangs on my mac. > On Jan 5, 2018, at 6:57 AM, Juergen Sauermann > wrote: > > Hi Jay, > > hmm, interesting. I am getting this: > > A←(-⌽A),0,A←1e¯200 1e¯100 1 1e100 1e200 > A∘.|A > 0E00E00 0E0 0E00 0E00E00 0E0 0E0 > 0E00E00 0E0

Re: [Bug-apl] Hang in Residue

2018-01-05 Thread Juergen Sauermann
Hi Jay, hmm, interesting. I am getting this:   A←(-⌽A),0,A←1e¯200 1e¯100 1 1e100 1e200   A∘.|A  0E0    0E0    0  0E0 0E0    0 0E0    0E0    0 0E0   0E0  0E0    0E0    0  0E0 0E0    0 0E0    0E0    0 0E0   0

[Bug-apl] Hang in Residue

2018-01-05 Thread Jay Foad
At svn r1028 on Linux I get: A←(-⌽A),0,A←1e¯200 1e¯100 1 1e100 1e200 A∘.|A (hangs) Jay.