diff --git a/polymani.pl b/polymani.pl index 643f105..8f9eac1 100644 --- a/polymani.pl +++ b/polymani.pl @@ -119,6 +119,9 @@ polynomial_tree_to_polynomial(A,B) :- polynomial_tree_to_atomic_polynomial(A,Pa), term_to_atom(B, Pa). +polynomial_tree_to_atomic_polynomial(load(L), P) :- + polynomial_store(L, P). + polynomial_tree_to_atomic_polynomial(op(Op, TL, TR), P) :- polynomial_tree_to_atomic_polynomial(TL,A), polynomial_tree_to_atomic_polynomial(TR,B), @@ -163,6 +166,7 @@ special_word_number(ninety, 90, fy). special_word_number(hundred, 100, xfy). special_word_number(thousand, 1000, xfy). special_word_number(million, 1000000, xfy). +special_word_number(IC, IC, _) :- number(IC). %% nlp_number(?W:Atom, ?D:Int) is det % @@ -273,7 +277,7 @@ parse_polynomial_operand(T) --> parse_stored_variable(T). :- dynamic polynomial_store/2. parse_stored_variable(P) --> %% NOTE Not sure if it's better to load now or later - [P], + [load(P)], { polynomial_store(P, _) }. parse_polynomial_variable(B) --> @@ -396,7 +400,6 @@ nlp_print_memory([nm(X,Y)|T]) :- nlp_print_memory(T). nlp_print_memory([]). - /******************************* * UI * *******************************/