
tent_call(+In, +Out, +Goal)

   Eagerly call Goal whenever tentative values of variables in In changes.

Arguments
   In                  List of variables (subset of variables in Goal)
   Out                 List of variables (subset of variables in Goal)
   Goal                Goal to be called

Type
   library(repair)

Description

This is a completely general meta-predicate to support computations
with tentative values. Goal is a general goal, and In and Out are
lists (or other terms) containing subsets of Goal's variables.
A copy of Goal is called, with the In-variables replaced by their
tentative values and the Out-variables replaced by fresh variables.
Goal is expected to return values for the Out variables. These values
are then used to update the tentative values of the original Out variables.
This process repeats whenever the tentative value of any In-variable
changes.



Modules
   This predicate is sensitive to its module context (tool predicate, see @/2).

See Also
   tent_set / 2, tent_is / 2
