Test results new floats

Here are some new test cases, the case3/3 facts have
changed. I added some hand picked test cases, from the
Ciao Prolog blooper, including some negative bigints:

cases.p.log (38,8 KB)

Interestingly other Prolog systems are also pray to the
same blooper. In total I found that 3 Prolog systems have
this blooper, whereas Trealla only for 50%. Here are now

the number of failures from the new test cases:

% case3, trealla: 5
% case3, ciao: 10
% case3, sicstus: 10

For ECLIPSe Prolog and Scryer Prolog can’t say exactly
whats going on, the count changed from 35 to 33 for case3/3
for both Prolog systems. Otherwise no problems seen, for example

JavaScript and Python platform of Dogelog Player do still fine.

Edit 20.10.2022
Maybe should modify the case/3 a little bit, to first check
whether the below implicit float conversion is also present in a
Prolog system. It would affect other test cases if they

don’t have an explicit float/1 call and compare to a float.
This can happen when for example (/)/2 or (**)/2 automatically
yields an integer when the result is integral. So far I didn’t notice

some problems, but I am not 100% sure what the Prolog
systems do. The implicit conversion is required by ISO core standard:

Unbenannt2

The change in the test case would simply be from
this here, i.e. counting this here:

?- case(N, X, Y), Y =\= float(X).

To count this here. But preferable also have some
negative test cases, not only (=\=)/2 but also (=:=)/2:

?- case(N, X, Y, eq), Y =\= X.
?- case(N, X, Y, nq), Y =:= X.

Now I got myself for the first time a Unix PPA installation,
on WSL2. I can confirm the (**)/2 problems go away:

/* SWI Prolog 8.5.20 Windows */
% case3, swi: 0
% case4, swi: 0
% case6, swi: 49

/* SWI Prolog 8.5.20 WSL2 */
% case3, swi: 0
% case4, swi: 0
% case6, swi: 0

The (**)/2 problem goes also away on WASM, but other
problems remain, since its still version 8.5.18 and 8.5.20:

/* SWI Prolog 8.5.18 WASM */
case3, swi: 7
case4, swi: 10
case6, swi: 0

Possible to bump a newer WASM. Was using this here:
https://dev.swi-prolog.org/wasm/shell

Bumbed to current git version.

Woa! I got myself for the first time a PPA Unix SWI-Prolog version.

Current testing results: Taking testing on the Unix platform, via PPA,
into account, recent SWI-Prolog is now among the most accurate
and fastest. :slight_smile: :slight_smile: :slight_smile:

Unfortunately building from Git on WSL2 failed, could only obtain PPA
Unix SWI-Prolog version. Git build failed when using the make path,
some man/archive.tex building issue and jtest hangs.

But I am afraid I will not follow the Git build for now.

Go to https://www.swi-prolog.org/build/Debian.txt to find the one-line copy paste apt command to get all dependencies for Debian-based systems. After you did so, remove CMakeCache.txt and re-run cmake. Is said to work fine on WSL2, be it a lot slower than on bare metal. After you got it once, updating is typically done in a few seconds.

Maybe it was an Ubuntu issue. Was on WSL2 Ubunutu.