A new general debugger is introduced, with advanced debugging features and an advice facility. It generalizes the notion of spypoint to that of the breakpoint. Breakpoints make it possible to e.g. stop the program at a specified line, or in a specified line range, or to call arbitrary Prolog goals at specified ports, etc. Highlights:
add_breakpoint/2
, spy/2
, current_breakpoint/4
,
remove_breakpoints/1
, disable_breakpoints/1
,
enable_breakpoints/1
, and execution_state/[1,2]
.
user:debugger_command_hook/2
is a new
hook predicate.
The predicates nospy/1
and nospyall/0
have slighty changed meaning.
The predicate spypoint_condition/3
has been removed.