Alain SMEJKAL on Tue, 19 Jul 2005 14:48:00 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: New experimental GP parser release


----- Original Message ----- 
From: "Bill Allombert" <allomber@math.u-bordeaux.fr>
Sent: Tuesday, June 28, 2005 7:06 PM


> I have made available a new version of my experimental GP parser:
> <http://pari.math.u-bordeaux.fr/~bill/pari-2.2.11.bill-1.tar.gz>

> it is probably very buggy.


Here is some bugs found in normal or stressed use.
I also have noticed a nice improvement, it is possible to write all a small
function in one line,
samples here are split in two lines for current Pari compatibility.

Regards,

Alain.


Compiled version :
                   GP/PARI CALCULATOR Version 2.2.11 (alpha)
                i686 running cygwin (ix86 kernel) 32-bit version
 compiled: Jun 30 2005, gcc-3.4.4 (cygming special) (gdc 0.12, using dmd
0.125)
                (readline v5.0 enabled, extended help available)


bug #1: crash in unexpected allowed use of reserved keywords as variables
? sin=1
%1 = 1
? sin(1)

  *** sin: bug in GP (Segmentation Fault), please report


bug #2 : global variable assignment trouble in scripts when used as function
parameter
? a=3.14;
? testaux(b)=
{print(a);print(b);}
? test()=
{testaux(a);}
? test
a
3.140000000000000000000000000


bug #3 : unexpected killed variable behavior in scripts (okay in interactive
mode)
? a=3.14;
? test()=
{print(sin(a));kill(a);}
? test
0.0015926529164869525405
? test
#<32> - 1/6*#<32>^3 + 1/120*#<32>^5 - 1/5040*#<32>^7 + 1/362880*#<32>^9 -
1/3991
6800*#<32>^11 + 1/6227020800*#<32>^13 - 1/1307674368000*#<32>^15 +
O(#<32>^17)

  ***   can't kill that.

? test

  ***   bug in GP (Segmentation Fault), please report


bug #4 : error behavior changes (note: there is also a trouble in Pari with
this vector print form, see wishlist #115)
? print(" " [1])

  ***   object has no components.
? print(" " [1,2])

  ***   object has no double components.
? print("" [1,2,3])

  ***   parse error, unexpected ',': print(""[1,2,3])
                                                                     ^----


bug #5 : unexpected display
? print("1)
1)
1