Don't shadow funcs & combos.

This commit is contained in:
Simon Forman 2019-08-11 14:56:20 -07:00
parent 9e180e8173
commit adf0e96f84
2 changed files with 9 additions and 3 deletions

View File

@ -3,6 +3,10 @@ GPLC_OPTIONS="--min-size"
thun: thun.pl parser.pl defs.pl main.pl
gplc $(GPLC_OPTIONS) -o thun thun.pl parser.pl defs.pl main.pl
defs.pl: meta-defs.pl parser.pl defs.txt
gprolog --consult-file meta-defs.pl --consult-file parser.pl --query-goal do
defs.pl: meta-defs.pl parser.pl defs.txt thun.pl
gprolog \
--consult-file meta-defs.pl \
--consult-file parser.pl \
--consult-file thun.pl \
--query-goal do

View File

@ -14,11 +14,12 @@ assert_defs(DefsFile) :-
phrase(joy_defs, Codes).
assert_def(def(Def, Body)) :-
\+ func(Def, _, _),
\+ combo(Def, _, _, _, _),
retractall(def(Def, _)),
assertz(def(Def, Body)).
read_file_to_codes(File, Codes, _) :-
open(File, read, Stream),
stream_to_codes(Stream, Codes),
@ -32,6 +33,7 @@ stream_to_codes(Stream, Codes) :-
stream_to_codes(-1, _, []) :- !.
stream_to_codes(Ch, Stream, [Ch|Codes]) :- stream_to_codes(Stream, Codes).
print_defs :-
findall(def(Name, Body), def(Name, Body), List),
open(`defs.pl`, write, Stream),