7 Debugging

This chapter describes the debugging facilities that are available in development systems. The purpose of these facilities is to provide information concerning the control flow of your program.

The main features of the debugging package are as follows:

The Procedure Box model of execution is also called the Byrd Box model after its inventor, Lawrence Byrd.

Much of the information in this chapter is also in Chapter eight of [Clocksin & Mellish 81], which is recommended as an introduction.

Unless otherwise stated, the debugger prints goals using write_term/3 with the value of the Prolog flag debugger_print_options (see State Info). The debugger is not available in runtime systems and the predicates defined in this chapter are undefined; see Runtime Systems.