Introduction

Quintus Prolog's source linked debugger allows you to see the source for the code you are running as you step through the debugging. It also provides convenient, window-based ways of debugging your code, and provides several optional continuously-updated views of your program's execution state as debugging proceeds.

     +--------------------------------------------------------------------+---+
     | - |                Quintus Debugger:  family.pl                    | o |
     +--------------------------------------------------------------------+---+
     | File  Options  Debug  Window  Travel                              Help |
     +-----+----+----+---+----------+-----+----+--------+----------+----------+
     |Creep|Skip|Leap|Zip|Quasi-skip|Retry|Fail|Frame Up|Frame Down|Frame Back|
     +-----+----+----+---+----------+-----+----+--------+----------+----------+
     | Depth:      Predicate:                                                 |
     +----------------------------------------------------------------------+-+
     |   %  Family Relationships example                                    | |
     |                                                                      | |
     |   %  parent(?Parent, ?Child)                                         | |
     |                                                                      | |
     |   parent(henry, peter).                                              | |
     |   parent(marie, peter).                                              | |
     |   parent(henry, judy).                                               | |
     |   parent(marie, judy).                                               | |
     |   parent(henry, henry2).                                             | |
     |   parent(marie, henry2).                                             | |
     |   parent(henry, susan).                                              | |
     |   parent(marie, susan).                                              | |
     |   parent(peter, peter2).                                             | |
     +----------------------------------------------------------------------+-+
     +----------------------------------------------------------------------+-+
     

This picture shows what the source-linked debugger looks like. At the top of the picture is the debugger window's title bar, which shows the name of the file currently being shown in the source code window. Below this is a menu bar showing names of the available menus. Next is a row of buttons that are used to travel between ports while debugging. Below this is a status panel that shows you useful information about the current debugging state. Finally, a scrolling window shows you where in your source code your current execution state is. All of these parts of the debugger are explained below.

The source-linked debugger is displayed either by selecting one of the first three options in the Debug pulldown in the menu bar of the QUI main window (see qui-mai-mai-fil), by selecting the Trace button in the interrupt dialogue (see qui-mai-int), or by turning on the debugger with the trace/0, debug/0, or prolog_flag/3 built-ins (see dbg-bas-con-tdz).

An alternative way of accessing the source-linked debugger is via the Emacs interface (see ema-ove-sld).