Or maybe the check is more difficult to perform
in a module context? Similar problem like here:
Only with infix and postfix for operators, instead of
static and built_in for predicates.
On the other hand I remember SWI-Prolog being
quite strict about ambiguous import of predicates.
Edit 09.04.2022:
Now I found a test case where SWI-Prolog and
Scryer Prolog differ in parsing:
/* SWI-Prolog */
?- op(9,fy,fy), op(9,yfx,yfx).
true.
?- X = (fy 1 yfx 2), write_canonical(X), nl.
yfx(fy(1),2)
But then:
/* Scryer Prolog */
?- op(9,fy,fy), op(9,yfx,yfx).
true.
?- X = (fy 1 yfx 2), write_canonical(X), nl.
fy(yfx(1,2))
Was worried what Dogelog Player does. But it seems Dogelog Player
sides with Scryer Prolog, also GNU Prolog, Tau Prolog and
formerly Jekejeke Prolog do.