Merge ssh://xato/home/vsc/yap

This commit is contained in:
Vitor Santos Costa
2018-09-14 17:46:00 +01:00
9 changed files with 111 additions and 81 deletions

View File

@@ -136,3 +136,14 @@ prolog:length(L, M) :-
%% @}
% reverse(List, Reversed)
% is true when List and Reversed are lists with the same elements
% but in opposite orders. rev/2 is a synonym for reverse/2.
lists:reverse(List, Reversed) :-
lists:reverse(List, [], Reversed).
lists:reverse([], Reversed, Reversed).
lists:reversae([Head|Tail], Sofar, Reversed) :-
lists:reverse(Tail, [Head|Sofar], Reversed).

View File

@@ -855,7 +855,10 @@ nb_setval('$if_le1vel',0).
'__NB_getval__'('$lf_status', TOpts, fail),
'$lf_opt'( initialization, TOpts, Ref),
nb:nb_queue_close(Ref, Answers, []),
lists:member(G, Answers),
'$process_init_goal'(Answers).
'$exec_initialization_goals'.
'$process_init_goal'([G|_]) :-
'$yap_strip_module'( G, M0, G0),
(
catch(M0:G0, Error, user:'$LoopError'(Error, top))
@@ -865,7 +868,8 @@ nb_setval('$if_le1vel',0).
format(user_error,':- ~w:~w failed.~n',[M0,G0])
),
fail.
'$exec_initialization_goals'.
'$process_init_goal'([_|Gs]) :-
'$process_init_goal'(Gs).
/**
@pred include(+ _F_) is directive

View File

@@ -54,6 +54,7 @@ load_mega_clause( Stream ) :-
*/
prolog:load_db(Fs) :-
'$current_module'(M0),
retractall(dbloading(_Na,_Arity,_M,_T,_NaAr,_)),
prolog_flag(agc_margin,Old,0),
dbload(Fs,M0,load_db(Fs)),
load_facts,
@@ -76,7 +77,7 @@ dbload(F, _, G) :-
'$do_error'(type_error(atom,F),G).
do_dbload(F0, M0, G) :-
'$full_filename'(F0, F, G),
'$full_filename'(F0, F),
assert(dbprocess(F, M0)),
open(F, read, R),
check_dbload_stream(R, M0),
@@ -92,7 +93,7 @@ check_dbload_stream(R, M0) :-
).
dbload_count(T0, M0) :-
get_module(T0,M0,T,M),
gemodule(T0,M0,T,M),
functor(T,Na,Arity),
% dbload_check_term(T),
(

View File

@@ -535,7 +535,7 @@ predicate_property(Pred,Prop) :-
functor(P,N,A),
once(recorded('$module','$module'(_TFN,M,_S,Publics,_L),_)),
lists:memberchk(N/A,Publics).
'$predicate_property'(P,M,M0,imported_from(M0)) :-
'$predicate_property'(P,M,M0,imported_from(M)) :-
M \= M0.
'$predicate_property'(P,Mod,_,number_of_clauses(NCl)) :-
'$number_of_clauses'(P,Mod,NCl).