Christo Dichev, Benedict du Boulay
This paper discusses the design principles and initial implementation of a data tracing system for Prolog suitable for novices. After a brief overview of existing debugging and tracing facilities, an extension is introduced that concentrates on data manipulation rather than flow of control. This system emphasises the representation of matching, propagation of bindings and copying of clauses. The paper continues with a discussion of future developments that will enable a more fine-grained representation of matching process and its effects on the other variables, as well as providing the user with more control over what is output. The paper concludes with an analysis of the requirements of an explanation system as opposed to simply a tracing system.
This paper is not available online