fix excessive pruning in meta-calls

fix Term->int breakage in compiler
improve JPL (at least it does something now for amd64).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1264 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
vsc
2005-03-13 06:26:13 +00:00
parent 7f481cef24
commit 59561e2688
20 changed files with 146 additions and 48 deletions

View File

@@ -6,7 +6,40 @@
nth1/3,
forall/2,
between/3,
concat_atom/2]).
concat_atom/2,
volatile/1]).
:- multifile user:file_search_path/2.
:- dynamic user:file_search_path/2.
user:file_search_path(swi, Home) :-
current_prolog_flag(home, Home).
user:file_search_path(foreign, swi(ArchLib)) :-
current_prolog_flag(arch, Arch),
atom_concat('lib/', Arch, ArchLib).
user:file_search_path(foreign, swi(lib)).
%
% maybe a good idea to eventually support this in YAP.
% but for now just ignore it.
%
:- meta_predicate volatile(:).
:- op(1150, fx, 'volatile').
volatile(P) :- var(P),
throw(error(instantiation_error,volatile(P))).
volatile(M:P) :-
do_volatile(P,M).
volatile((G1,G2)) :-
volatile(G1),
volatile(G2).
volatile(P) :-
do_volatile(P,_).
do_volatile(_,_).
:- meta_predicate forall(+,:).