Kill the suspended goal represented by Susp, i.e. treat it as if it had
been woken.
+Susp
A suspension or variable.
Description
The suspended goal represented by Susp is killed, and the suspension is
marked as now representing a woken goal. If the suspension was already
marked as woken, kill_suspension/1 just succeeds. If called with a
variable, it succeeds as well which is useful when writing demon
predicates that might not have a suspension the first time they are
invoked.
Note that a suspension is not a standard Prolog data structure and can
only be manipulated in a restricted way.
Fail Conditions
None.
Resatisfiable
No.
Exceptions
(5) Type error
Susp is not a suspension.
Examples
[eclipse 1]: make_suspension(writeln(hello), S),
kill_suspension(S),
call_suspension(S). % no effect
S = 'WOKEN GOAL'
yes.