New Debugger Commands

The Prolog debugger is extended by FDBG. The & debugger is modified, and two new commands are added:

& N

This debugger command is extended so that the annotated form of domain variables is also printed when listing the variables with blocked goals.

A Selector

Annotates and prints the current goal and a legend of the variables appearing in it. If a selector is specified, the subterm specified by it is assumed to be an action list, and is taken into account when displaying the legend. For example:

23  2 Exit: clpfd:dispatch_global_fast(no_threat(2,_1001,1),0,0,
            [exit,_1001 in_set[[3|3]]]) ? A [2,4]

                           [exit,<board_2> in_set[[3|3]]])
    board_2 = 1..4 -> {3}
    Constraint exited.
W Name=Selector

Assigns the atom Name to the variable specified by the Selector. For example:

7      15 Call: bar(4, [_101,_102,_103]) ? W foo=[2,#2]

This would assign the name foo to _102, being the second element of the second argument of the current goal.

Send feedback on this subject.