1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="hevea 1.08">
<LINK rel="stylesheet" type="text/css" href="gprolog.css">
<TITLE>
Debugging messages
</TITLE>
</HEAD>
<BODY TEXT=black BGCOLOR=white>
<A HREF="gprolog012.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="gprolog009.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="gprolog014.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
<HR>
<H3 CLASS="subsection"><A NAME="htoc26">4.4</A> Debugging messages</H3>
We here described which information is displayed by the debugger when it
shows a goal. The basic format is as follows:
<DL CLASS="list" COMPACT="compact"><DT CLASS="dt-list"><DD CLASS="dd-list"><TT><I>S N M Port</I>: <I>Goal</I> ?</TT></DL><I><TT>
S</TT></I> is a spy-point indicator: if there is a spy-point on the
current goal the <TT>+</TT> symbol is displayed else a space is displayed.
<I><TT>N</TT></I> is the invocation number. This unique number can be used
to correlate the trace messages for the various ports, since it is unique
for every invocation. <I><TT>M</TT></I> is an index number which
represents the number of direct ancestors of the goal (i.e. the current
depth of the goal). <I><TT>Port</TT></I> specifies the particular port
(<TT>call</TT>, <TT>exit</TT>, <TT>fail</TT>, <TT>redo</TT>,
<TT>exception</TT>). <I><TT>Goal</TT></I> is the current goal (it is then
possible to inspect its current instantiation) which is displayed using
<TT>write_term/3</TT> with <TT>quoted(true)</TT> and
<TT>max_depth(<I>D</I>)</TT> options (section <A HREF="gprolog037.html#write-term/3">7.14.6</A>). Initially
<I><TT>D</TT></I> (the print depth) is set to 10 but can be redefined
using the <TT><</TT> debugger command (section <A HREF="gprolog014.html#Debugger-commands">4.5</A>). The
<TT>?</TT> symbol is displayed when the debugger is waiting a command from
the user. (i.e. <TT>Port</TT> is a leashed port). If the port is unleashed,
this symbol is not displayed and the debugger continues the execution
displaying the next goal.<BR>
<BR>
<HR SIZE=2>
Copyright (C) 1999-2007 Daniel Diaz
<BR>
<BR>
Verbatim copying and distribution of this entire article is permitted in any
medium, provided this notice is preserved. <BR>
<BR>
<A HREF="index.html#copyright">More about the copyright</A>
<HR>
<A HREF="gprolog012.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="gprolog009.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="gprolog014.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
|