Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.prolog > #14636
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Newsgroups | comp.lang.prolog |
| Subject | Shocking Revelation: No eGovernment can trust Prolog! (Was: Observed while watching FAIL/REDO ports) |
| Date | 2025-07-10 13:26 +0200 |
| Message-ID | <104o81r$20hbm$1@solani.org> (permalink) |
| References | <104o5kc$20fno$1@solani.org> <104o5mr$20fno$2@solani.org> |
Hi, Shocking revelation, I found two significant bugs in my age old indexer code base yesterday. How can an eGovernment ever trust any Prolog system? These were bugs that typically go unnoticed by lets say a Rust type system. Would possibly require deep axiomatization or heavy fuzzy testing of the code, or a combination of both. LoL Bye Mild Shock schrieb: > I made the observation while looking at > debugger traces, choice point elimination, > driven by indexes, also determines what > FAIL/REDO ports a debugger shows. > > What is amazing Scryer Prolog, which has > a tamer version of multi-argument indexing, a > kind of skip indexing, they describe > it on their GitHub homepage, can do it: > > /* Scryer Prolog 0.9.4-415 */ > ?- app(X,Y,[1]). > X = [], Y = [1] > ; X = [1], Y = []. > > And the ghost from my cabinet, formerly > Jekejeke Prolog, which does a little bit more > than skip indexing, but still not the same deep > indexing as in SWI-Prolog can also do it: > > /* Jekejeke Runtime 1.7.3 */ > ?- app(X,Y,[1]). > X = [], Y = [1]; > X = [1], Y = []. > > Mild Shock schrieb: >> I am currently doing a re-evaluation of an old >> Prolog system, checking what features I could adopt. >> This is unlike the current trend where people have >> turned their focus on GUIs, like XPCE, >> >> or a are stuck in an endless loop of parser >> problems, like in Trealla. But I would nevertheless >> share my finding. Take this simple example of >> a list append: >> >> app([], X, X). >> app([X|Y], Z, [X|T]) :- app(Y, Z, T). >> >> ECLiPSe Prolog gives me, only one redo question >> in the top-level: >> >> /* ECLiPSe Prolog 7.1beta #13 */ >> [eclipse 2]: app(X,Y,[1]). >> >> X = [] >> Y = [1] >> Yes (0.00s cpu, solution 1, maybe more) ? ; >> >> X = [1] >> Y = [] >> Yes (0.00s cpu, solution 2) >> >> In SWI-Prolog I find, two redo questions >> in the top.level: >> >> /* SWI-Prolog 9.3.25 */ >> ?- app(X,Y,[1]). >> X = [], >> Y = [1] ; >> X = [1], >> Y = [] ; >> false. >> >> I know SWI-Prolog handles lists differently >> than other Prolog terms during indexing. Could >> this be the reason? Or maybe that the call is >> not “hot” enough, so it doesn’t get JIT-ed. >> >> ECLiPSe Prolog does it on the very first call, >> and I assume its due to a kind of index on >> the 3rd argument. >> >
Back to comp.lang.prolog | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
The Ghosts in my Cabinet: Indexing Mild Shock <janburse@fastmail.fm> - 2025-07-10 12:45 +0200
Observed while watching FAIL/REDO ports (Was: The Ghosts in my Cabinet: Indexing) Mild Shock <janburse@fastmail.fm> - 2025-07-10 12:46 +0200
Shocking Revelation: No eGovernment can trust Prolog! (Was: Observed while watching FAIL/REDO ports) Mild Shock <janburse@fastmail.fm> - 2025-07-10 13:26 +0200
Easier certification with 100% Prolog Prolog? (Was: Shocking Revelation: No eGovernment can trust Prolog!) Mild Shock <janburse@fastmail.fm> - 2025-07-10 14:05 +0200
Doing a Prolog system without any iterator API (Was: Easier certification with 100% Prolog Prolog?) Mild Shock <janburse@fastmail.fm> - 2025-07-10 14:14 +0200
The headache with JIT indexing: Native -> Prolog (Was: Doing a Prolog system without any iterator API) Mild Shock <janburse@fastmail.fm> - 2025-07-10 14:40 +0200
Just lets burn another candle for Barty Boy (Was: The headache with JIT indexing: Native -> Prolog) Mild Shock <janburse@fastmail.fm> - 2025-07-10 18:13 +0200
Physics PhDs might never have heard of Quantifier Eliminations (Re: Just lets burn another candle for Barty Boy) Mild Shock <janburse@fastmail.fm> - 2025-07-10 18:33 +0200
How long willl I piss on Bart Demoen (Was: Physics PhDs might never have heard of Quantifier Eliminations) Mild Shock <janburse@fastmail.fm> - 2025-07-10 18:39 +0200
But I shouldn't waste too much time (Was: How long willl I piss on Bart Demoen) Mild Shock <janburse@fastmail.fm> - 2025-07-10 19:13 +0200
DCG is easily affected (Was: The Ghosts in my Cabinet: Indexing) Mild Shock <janburse@fastmail.fm> - 2025-07-11 09:38 +0200
The headache an eGovernment might get from Prolog (Was: DCG is easily affected) Mild Shock <janburse@fastmail.fm> - 2025-07-15 15:20 +0200
Wait till they find out about compare/3 (Was: The headache an eGovernment might get from Prolog) Mild Shock <janburse@fastmail.fm> - 2025-07-15 15:24 +0200
Corr. (Was: Wait till they find out about compare/3) Mild Shock <janburse@fastmail.fm> - 2025-07-15 15:28 +0200
eGovernements will need AGI to survive (Was: Corr. (Was: Wait till they find out about compare/3)) Mild Shock <janburse@fastmail.fm> - 2025-07-15 18:41 +0200
Having 2544 issues is probably a bad sign (Re: eGovernements will need AGI to survive) Mild Shock <janburse@fastmail.fm> - 2025-07-15 18:41 +0200
The Signal Collapse gives us System Uncertainty (Re: Having 2544 issues is probably a bad sign) Mild Shock <janburse@fastmail.fm> - 2025-07-15 19:02 +0200
Rename GitHub, to TurdPit, and make Amber Heard their CEO (Was: The Signal Collapse gives us System Uncertainty) Mild Shock <janburse@fastmail.fm> - 2025-07-15 19:52 +0200
Humans are just overwhelmed by computers (Was: eGovernements will need AGI to survive) Mild Shock <janburse@fastmail.fm> - 2025-07-16 18:59 +0200
Fishy 🐟 in Scryer Prolog and SWI-Prolog (Was: Humans are just overwhelmed by computers) Mild Shock <janburse@fastmail.fm> - 2025-07-16 20:08 +0200
So we are essentially all using Trojan Horses 🐎 daily? (Re: Fishy 🐟 in Scryer Prolog and SWI-Prolog) Mild Shock <janburse@fastmail.fm> - 2025-07-17 10:57 +0200
Strudel Rust gives Scryer Frust 💩: Try C+20 Pipes (Was: Fishy 🐟 in Scryer Prolog and SWI-Prolog( Mild Shock <janburse@fastmail.fm> - 2025-11-25 22:55 +0100
SWI-Prolog as a Test Bed for Copilots (Was: Humans are just overwhelmed by computers) Mild Shock <janburse@fastmail.fm> - 2025-07-20 14:36 +0200
Mathematics currently hates Computer Science because of AI (Re: SWI-Prolog as a Test Bed for Copilots) Mild Shock <janburse@fastmail.fm> - 2025-07-20 15:13 +0200
csiph-web