use_load_files to handle initialization files

git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1404 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
vsc 2005-10-19 10:12:50 +00:00
parent 8b06ce9fe4
commit 31a09376f8
3 changed files with 25 additions and 20 deletions

View File

@ -169,3 +169,9 @@ tv(Term,List,Tail) :- term_variables(Term,List,Tail).
prolog:term_variables(Term,List,Tail) :- tv(Term,List,Tail). prolog:term_variables(Term,List,Tail) :- tv(Term,List,Tail).
prolog:working_directory(OCWD,NCWD) :-
getcwd(OCWD),
(var(NCWD) -> true ; cd(NCWD)).
prolog:chdir(X) :- cd(X).

View File

@ -64,9 +64,9 @@ true :- true.
; ;
'$current_module'(_,V), '$compile_mode'(_,0), '$current_module'(_,V), '$compile_mode'(_,0),
('$access_yap_flags'(16,0) -> ('$access_yap_flags'(16,0) ->
( exists('~/.yaprc') -> [-'~/.yaprc'] ; true ), ( exists('~/.yaprc') -> load_files('~/.yaprc', []) ; true ),
( exists('~/.prologrc') -> [-'~/.prologrc'] ; true ), ( exists('~/.prologrc') -> load_files('~/.prologrc', []) ; true ),
( exists('~/prolog.ini') -> [-'~/prolog.ini'] ; true ) ( exists('~/prolog.ini') -> load_files('~/prolog.ini', []) ; true )
; ;
true true
) )
@ -808,17 +808,6 @@ bootstrap(F) :-
!. !.
'$record_loaded'(Stream, M) :-
Stream \= user,
Stream \= user_input,
'$file_name'(Stream,F),
( recorded('$lf_loaded','$lf_loaded'(F,M,_),R), erase(R), fail ; true ),
'$file_age'(F,Age),
recorda('$lf_loaded','$lf_loaded'(F,M,Age),_),
fail.
'$record_loaded'(_, _).
'$loop'(Stream,Status) :- '$loop'(Stream,Status) :-
'$change_alias_to_stream'('$loop_stream',Stream), '$change_alias_to_stream'('$loop_stream',Stream),
repeat, repeat,

View File

@ -79,8 +79,8 @@ load_files(Files,Opts) :-
'$process_lf_opt'(silent(false),_,_,_,_,_,_,_,_,_,_,_). '$process_lf_opt'(silent(false),_,_,_,_,_,_,_,_,_,_,_).
'$process_lf_opt'(consult(reconsult),_,_,_,_,_,_,_,_,reconsult,_,_). '$process_lf_opt'(consult(reconsult),_,_,_,_,_,_,_,_,reconsult,_,_).
'$process_lf_opt'(consult(consult),_,_,_,_,_,_,_,_,consult,_,_). '$process_lf_opt'(consult(consult),_,_,_,_,_,_,_,_,consult,_,_).
'$process_lf_opt'(stream(Stream),_,_,_,_,_,_,_,Stream,_,_,_,Call) :- '$process_lf_opt'(stream(Stream),_,_,_,_,_,_,Stream,_,_,Files,_) :-
( '$stream'(Stream) -> true ; '$do_error'(domain_error(stream,Stream),Call) ), /* ( '$stream'(Stream) -> true ; '$do_error'(domain_error(stream,Stream),Call) ), */
( atom(Files) -> true ; '$do_error'(type_error(atom,Files),Call) ). ( atom(Files) -> true ; '$do_error'(type_error(atom,Files),Call) ).
'$lf'(V,_,Call,_,_,_,_,_,_,_) :- var(V), !, '$lf'(V,_,Call,_,_,_,_,_,_,_) :- var(V), !,
@ -264,17 +264,18 @@ use_module(M,F,Is) :-
'$do_startup_reconsult'(X) :- '$do_startup_reconsult'(X) :-
( '$access_yap_flags'(15, 0) -> ( '$access_yap_flags'(15, 0) ->
true Opts=[]
; ;
set_value('$lf_verbose',silent) Opts=[silent(true)]
), ),
( '$find_in_path'(X,Y,reconsult(X)), ( '$find_in_path'(X,Y,reconsult(X)),
'$open'(Y,'$csult',Stream,0) -> '$open'(Y,'$csult',Stream,0) ->
( '$access_yap_flags'(15, 0) -> true ; '$skip_unix_comments'(Stream) ), ( '$access_yap_flags'(15, 0) -> true ; '$skip_unix_comments'(Stream) ),
'$current_module'(M), '$do_lf'(Y,M,Stream,silent,_,_), '$close'(Stream) load_files(Y,[stream(Stream)|Opts])
; ;
'$output_error_message'(permission_error(input,stream,X),reconsult(X)) '$output_error_message'(permission_error(input,stream,X),reconsult(X))
), ),
( '$access_yap_flags'(15, 0) -> true ; halt). ( '$access_yap_flags'(15, 0) -> true ; halt).
'$skip_unix_comments'(Stream) :- '$skip_unix_comments'(Stream) :-
@ -426,5 +427,14 @@ remove_from_path(New) :- '$check_path'(New,Path),
file_directory_name(F, Dir), file_directory_name(F, Dir),
cd(Dir). cd(Dir).
'$record_loaded'(Stream, M) :-
Stream \= user,
Stream \= user_input,
'$file_name'(Stream,F),
( recorded('$lf_loaded','$lf_loaded'(F,M,_),R), erase(R), fail ; true ),
'$file_age'(F,Age),
recorda('$lf_loaded','$lf_loaded'(F,M,Age),_),
fail.
'$record_loaded'(_, _).