----------------------------------------------------------------------------------
@MSGID:
<a6ed877b-5d7d-4404-b41c-ee58c12ba6a0n@googlegroups.com> d64e1f08
@REPLY:
<b4fe1397-91ae-472c-9365-dbd8e0937f27n@googlegroups.com> 9a4a98da
@REPLYADDR Mild Shock <bursejan@gmail.com>
@REPLYTO 2:5075/128 Mild Shock
@CHRS: CP866 2
@RFC: 1 0
@RFC-References:
<616590d2-4927-4f60-ba91-acef849695a3n@googlegroups.com> <b4fe1397-91ae-472c-9365-dbd8e0937f27n@googlegroups.com>
@RFC-Message-ID:
<a6ed877b-5d7d-4404-b41c-ee58c12ba6a0n@googlegroups.com>
@TZUTC: -0700
@PID: G2/1.0
@TID: FIDOGATE-5.12-ge4e8b94
My newest take in formerly Jekejeke Prolog and Dogelog
Player, now behaving the same for this test case. This
is a preview, these versions have not yet been officially released:
/* Jekejeke Prolog, 1.6.3 */
?- X is append(1,2).
Error: Argument should have evaluable functor, found append/2.
?- X is append([1,2],[3]).
Error: Argument should have evaluable functor, found append/2.
/* Dogelog Player, 1.1.1, nodeJS */
?- X is append(1,2).
Error: Argument should have evaluable functor, found append/2.
?- X is append([1,2],[3]).
Error: Argument should have evaluable functor, found append/2.
/* Dogelog Player, 1.1.1, PyPy */
?- X is append(1,2).
Error: Argument should have evaluable functor, found append/2.
?- X is append([1,2],[3]).
Error: Argument should have evaluable functor, found append/2.
Mild Shock schrieb am Samstag, 9. September 2023 um 20:09:47 UTC+2:
> I am still fiddling around with (is)/2 implementation.
> Formerly Jekejeke Prolog had traditionally automatic
> bridging and tunneling. This is all going down the drain,
>
> we want to become more GNU Prolog compatible. Novacore
> should be as puritanical as possible, namely a Prolog core that
> has an upbringing that disapproves the suggar laced world of
>
> formerly Jekejeke Prolog! Funny discovery, not all Prolog
> systems throw the same evaluable errors. Here a little
> discrepancy between GNU Prolog and SWI-Prolog:
>
> /* GNU Prolog */
> ?- X is append(1,2).
> uncaught exception: error(type_error(evaluable,append/2),(is)/2)
> ?- X is append([1,2],[3]).
> uncaught exception: error(type_error(evaluable,append/2),(is)/2)
>
> /* SWI-Prolog */
> ?- X is append(1,2).
> ERROR: Arithmetic: `append/2` is not a function
> ?- X is append([1,2],[3]).
> ERROR: Type error: `[]` expected, found `[1,2]` (a list)
> ("x" must hold one character)
--- G2/1.0
* Origin: usenet.network (2:5075/128)
SEEN-BY: 5001/100 5005/49 5015/255 5019/40 5020/715
848 1042 4441 12000
SEEN-BY: 5030/49 1081 5058/104 5075/128
@PATH: 5075/128 5020/1042 4441