print() does output numbers in scientific notation violating JSON number spec

[email protected] Thu, 18 Jan 2024 23:09:49 +0100
Newsgroups gmane.comp.mathematics.pari.devel
Message-ID <[email protected]>
 From latest JSON rfc:

https://www.rfc-editor.org/rfc/rfc8259#section-6

       number = [ minus ] int [ frac ] [ exp ]

       decimal-point = %x2E       ; .

       digit1-9 = %x31-39         ; 1-9

       e = %x65 / %x45            ; e E

       exp = e [ minus / plus ] 1*DIGIT

       frac = decimal-point 1*DIGIT

So no space is allowed between "frac" part end "exp" part.

But gp does output a space:

? version
%2 = [2, 15, 4]
? print(0.00001)
1.0000000000000000000000000000000000000 E-5
?

I use PARI/GP to write a JSON file, that is read by JavaScript/nodejs.
And that errors out on reading above number.
If I manually remove the space, 
"1.0000000000000000000000000000000000000E-5" can be processed easily.

I would say this is at least an interoperability bug.
It should be fixed, if there is not a really good reason to output that 
space.


Is there an option to make PARI/GP produce "0.00001" as output instead 
of scientific representation?


Regards,

Hermann.