A framework for the principled debugging of Prolog programs: how to debug non-terminating programs

Abstract: "The search for better Prolog debugging environments has taken a number of different paths of which three are particularly important: improvements to monitoring tools (notably the Transparent Prolog Machine (Eisenstadt & Brayshaw, 1987)), providing for greater user control over th...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Brna, Paul (VerfasserIn), Bundy, Alan (VerfasserIn), Pain, Helen (VerfasserIn)
Format: Buch
Sprache:English
Veröffentlicht: Edinburgh 1990
Schriftenreihe:University <Edinburgh> / Department of Artificial Intelligence: DAI research paper 472
Schlagworte:
Zusammenfassung:Abstract: "The search for better Prolog debugging environments has taken a number of different paths of which three are particularly important: improvements to monitoring tools (notably the Transparent Prolog Machine (Eisenstadt & Brayshaw, 1987)), providing for greater user control over the debugging process (notably as in Opium p+ s (Ducasse, 1988)), and partially automating the debugging process (notably in (Pereira, 1986; Lloyd, 1986; Pereira & Calejo, 1988; Naish, 1988)). A serious problem associated with this activity lies in providing a principled conceptual framework within which the programmer can work with a number of different debugging tools
Here, we outline a framework that we have developed for the debugging of Prolog programs. We point out the relationship that holds between this framework and each of these three advances in debugging. In order to demonstrate how the framework can be used, we explore an issue that has received relatively little attention recently: the run-time detection of programs that do not appear to terminate. Our analysis of (apparent) non-termination is based on a four level Bug Description Framework that we have developed. This analysis goes further than the consideration of programs that would normally be regarded as 'looping'
We describe a debugging strategy in conjunction with a range of monitoring tools that provide greater assistance than currently found. We indicate the increased efficiency that would be gained through a close-coupling of the program construction and execution phases. From this analysis, we see that current (non-graphical) debugging tools do not provide the necessary help to deal with the case of (apparent) non-termination. We also note that even a graphical debugger such as TPM (Eisenstadt & Brayshaw, 1987) does not provide all the desired assistance that we would like.
Beschreibung:30 S.

Es ist kein Print-Exemplar vorhanden.

Fernleihe Bestellen Achtung: Nicht im THWS-Bestand!