| Deutsch English Français Italiano |
|
<v7mem6$6uld$1@solani.org> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!feeds.phibee-telecom.net!weretis.net!feeder8.news.weretis.net!reader5.news.weretis.net!news.solani.org!.POSTED!not-for-mail
From: Mild Shock <janburse@fastmail.fm>
Newsgroups: comp.lang.prolog
Subject: Is Rust the culprit? (Was: What about the Holy Grail?)
Date: Mon, 22 Jul 2024 22:16:07 +0200
Message-ID: <v7mem6$6uld$1@solani.org>
References: <v32hjd$s3qh$1@solani.org> <v7g0du$475u$1@solani.org>
<v7j9g9$643u$1@solani.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 22 Jul 2024 20:16:06 -0000 (UTC)
Injection-Info: solani.org;
logging-data="228013"; mail-complaints-to="abuse@news.solani.org"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Firefox/91.0 SeaMonkey/2.53.18.2
Cancel-Lock: sha1:ZViBkyVFhz4PYMAeRLE63FybSrs=
In-Reply-To: <v7j9g9$643u$1@solani.org>
X-User-ID: eJwNisERACEIxFoSgV2vHFDov4Rj8komrhBcGhzmPWDJ0bwRPJN6S0CyHm9sslm2arxOClvm2ex4utKgn3v+T+cVYg==
Bytes: 1899
Lines: 36
Maybe Scryer Prolog is a failure, because Rust
is a failure. Building Scryer Prolog on my machine,
after a git pull of a small change, did just
take this much time:
$ time cargo build --release
[...]
real 6m52.663s
user 7m39.043s
sys 0m3.241s
What did Rust do? And this tabling test case,
2000 shuttle, hangs:
/* Scryer Prolog 0.9.4-107 */
?- use_module(library(tabling)).
true.
?- [user].
:- table c/1.
c(X) :- c(Y), 0 =< Y, Y < 20000, X is -Y-1.
c(X) :- c(Y), -20000 < Y, Y =< 0, X is -Y+1.
c(0).
?- time(c(_)).
%%% hangs ? %%%
It is solved in a blink in SWI-Prolog:
/* SWI-Prolog 9.3.8 */
?- time(c(_)).
% 540,077 inferences, 0.047 CPU in 0.051 seconds (92% CPU, 11521643 Lips)
true .
The test case is from here:
https://github.com/JanWielemaker/tabling_benchmarks/tree/master