UWN
UWN
You are abusing Scryer for your personal comments on the standard. Please do stick to identifying actual problems.
> ISO Modules are awesome and I would love to see them implemented! To be clear: You mean your reading of ISO modules. You do not mean the reading applied...
In SICStus, the existence error also indicates the module where that error occurs.
Could you disassemble the WAM code just to see what has been compiled there?
Any easy way to tell what module we are in? (I hoped it would show here, but this `set_constant('$index_ptr'(19371)),` is obscure.)
In some sense, your query `?- wam_instructions(test2/0,Instrutions).` is all we need to know. Clearly, `call/2` at the end is handled like an ordinary predicate. It just passes the term over...
Shorter (it seems to be independent of `dif/2`): ``` ?- phrase_from_file(({freeze(C,true)},[C]),"test.txt"). false, unexpected. ?- phrase_from_file(([C],{freeze(C,true)}),"test.txt"). C = a. ?- phrase(([C],{freeze(C,true)}),"a"). C = a. ?- phrase(({freeze(C,true)},[C]),"a"). C = a.
For reproduction it is helpful to minimize terms and dependencies on libraries and other code. In fact, even `maplist/4` is not needed. Some things improved in rebis-dev 75e52068 compared to...
With `rebis-dev` I had to add ``` :- initialization(asserta(clpz:monotonic)). ``` (The fact alone was not permitted) ``` ?- qs_Ts_Us(Qs, [1,3], [5,9]). error(type_error(integer,clpz(clpz_attr(no,no,no,from_to(n(0),sup),fd_props([],[propagator(pplus(_928425,_928427,_928429,_928424),_928419)],[]),queue(_928409,_928410,_928411,_928412)))),must_be/2).
> The issue is more readily observed with a custom propagator: Is this also observed just with `library(clpz)` alone?