On 22/12/2024 19:35, 'Jim Idle' via Pick and MultiValue Databases wrote:
> UV handling of floating point and precision is essentially broken. To
> support this ‘take on it’ we had to do a lot of work in jBASE so we
> could port UV applications.
iiui, back when we were on UV 9.6, I was (of course) interested in the
internals, and was left with the impression that UV was fairly
aggressive about caching numbers as IEEE. So basically UV very much does
stuff as computer floating point. Which was why max (and iirc default)
PRECISION was 14.
We'd moved from INFORMATION, which was all I'd used before that. And was
very much a "you get what you ask for" as regards precision (I think it
defaulted to 4dp). And when run on 50-series (ie it wasn't PI-Open) you
actually had special BCD microcode. So PI didn't do floating point, it
did BCD.
I don't know what other variants do, but given that everything in MV is
strings, it certainly seems as though BCD makes more sense than IEEE FP.
Cheers,
Wol