assert_defs/1 got upset about not finding combo/5
This commit is contained in:
parent
e67ef3951c
commit
aae0e91c44
48
thun/thun.pl
48
thun/thun.pl
|
|
@ -196,30 +196,6 @@ comparison_operator(=, =:=).
|
||||||
comparison_operator(<>, =\=).
|
comparison_operator(<>, =\=).
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
Definitions
|
|
||||||
*/
|
|
||||||
|
|
||||||
joy_def(def(Def, Body)) --> symbol(Def), blanks, "==", joy_parse(Body).
|
|
||||||
|
|
||||||
joy_def --> joy_def(Def), {ignore(assert_def(Def))}.
|
|
||||||
|
|
||||||
joy_defs --> blanks, joy_def, blanks, joy_defs.
|
|
||||||
joy_defs --> [].
|
|
||||||
|
|
||||||
assert_defs(DefsFile) :-
|
|
||||||
read_file_to_codes(DefsFile, Codes, []),
|
|
||||||
phrase(joy_defs, Codes).
|
|
||||||
|
|
||||||
assert_def(def(Def, Body)) :-
|
|
||||||
\+ func(Def, _, _),
|
|
||||||
\+ combo(Def, _, _, _, _),
|
|
||||||
retractall(def(Def, _)),
|
|
||||||
assertz(def(Def, Body)).
|
|
||||||
|
|
||||||
:- assert_defs("defs.txt").
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Combinators
|
Combinators
|
||||||
*/
|
*/
|
||||||
|
|
@ -298,6 +274,30 @@ prepare_mapping( P, S, [T|In], Acc, Out) :-
|
||||||
prepare_mapping(P, S, In, [[T|S], P, infrst|Acc], Out).
|
prepare_mapping(P, S, In, [[T|S], P, infrst|Acc], Out).
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
Definitions
|
||||||
|
*/
|
||||||
|
|
||||||
|
joy_def(def(Def, Body)) --> symbol(Def), blanks, "==", joy_parse(Body).
|
||||||
|
|
||||||
|
joy_def --> joy_def(Def), {ignore(assert_def(Def))}.
|
||||||
|
|
||||||
|
joy_defs --> blanks, joy_def, blanks, joy_defs.
|
||||||
|
joy_defs --> [].
|
||||||
|
|
||||||
|
assert_defs(DefsFile) :-
|
||||||
|
read_file_to_codes(DefsFile, Codes, []),
|
||||||
|
phrase(joy_defs, Codes).
|
||||||
|
|
||||||
|
assert_def(def(Def, Body)) :-
|
||||||
|
\+ func(Def, _, _),
|
||||||
|
\+ combo(Def, _, _, _, _),
|
||||||
|
retractall(def(Def, _)),
|
||||||
|
assertz(def(Def, Body)).
|
||||||
|
|
||||||
|
:- assert_defs("defs.txt").
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Compiler
|
Compiler
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue