Can table/1
be used outside of a directive?
e.g.
enable_memoization :-
table my_goal/1.
disable_memoization :-
abolish_table_subgoals(my_goal(_)),
% how would I disable table my_goal/1 here?
Can table/1
be used outside of a directive?
e.g.
enable_memoization :-
table my_goal/1.
disable_memoization :-
abolish_table_subgoals(my_goal(_)),
% how would I disable table my_goal/1 here?
At the moment not. The latest (git) version is a lot closer to realise this. I surely plan to provide that as it facilitates creating tabled programs fully dynamically without creating a file.
Great! This will be very useful!
If you do not mind building from source, please give the current git version (V8.1.7-4-gb83c00d95 or later) a try. You can call table/1 as a predicate and call untable/1 to remove the tabling (as well as the associated tables).
Jan,
Thanks, this is great! It is working well from my quick testing!