logo search
TurboProlog / Документация / TOM_1

Директива трассировки

Для трассировки программы в заголовке вашей программы нужно помес-

тить директиву компилятора trace (или выбрать Trace из меню

Option/Compiler Directives/Trace).

Директива trace вместе с соединенными с ней функциями позволяет вы-

полнять вашу программу в пошаговом режиме. Когда вы запустите программу в

режиме трассировки, в окне Trace показывается каждый предикат, который

вызывается, и текущие значения аргументов этого предиката. Редактор рас-

полагает курсор на вызываемой подцели, причем точно показывает, где ваша

программа выполняется и каковы значения любых связанных переменных. По

мере того, как Турбо Пролог пытается удовлетворить каждый вызов, курсор

продвигается в ту точку в вашей программе, где система пытается реализо-

вать текущий вызов.

Таблица 10.1 Сообщения окна Trace

-----------------------------------------------------------------

CALL Когда вызывается предикат, его имя и значения его

параметров выводятся в окне Trace.

RETURN Когда предикат (или правило) удовлетворяется, в окне

Trace выводится RETURN и возвращаемый предикат. Если

имеются другие предложения, соответствующие входным

параметрам, то появляется изображение звездочки (*),

показывающее, что имел место поиск с возвратом

(недетерминированный).

FAIL Когда предикат не удовлетворяется, перед именем неудачно

завершившегося предиката появляется слово FAIL.

REDO REDO показывает, что произведен поиск с возвратом. Имя

повторно выполняющегося предиката появляется в окне Trace

наряду со значениями его параметров.

-----------------------------------------------------------------