Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!think.com!spool.mu.edu!munnari.oz.au!bruce!goanna!ok From: ok@goanna.cs.rmit.oz.au (Richard A. O'Keefe) Newsgroups: comp.lang.prolog Subject: Re: better than 4-port debugger Message-ID: <6477@goanna.cs.rmit.oz.au> Date: 24 Jun 91 09:17:32 GMT Article-I.D.: goanna.6477 References: <1793@usage.csd.unsw.oz.au> Organization: Comp Sci, RMIT, Melbourne, Australia Lines: 31 In article <1793@usage.csd.unsw.oz.au>, jim@hydra.maths.unsw.oz.au writes: > IMHO, four-port debugging may be fine as an underlying model, > but is bad as a view of that model. recently, i was doing some > partial evaluation work and the strutures i was generating filled > several lines on my 4-port debugger. That is *precisely* what the print/1 and portray/1 predicates were invented for. The (tty interface to) the four-port debugger *must* call print/1 to display the goals. You get to define portray/1 to do whatever level of abbreviation you like. When I say that print/1 and portray/1 were invented for this, I am writing the literal truth. Chris Mellish was working on a program written in DEC-10 Prolog where the goals (even when acyclic) tended to take up a whole screen. print/1 and portray/1 were added so that he could abbreviate the output. The 'w' command and its relatives in the tty interface to the 4-port debugger let you over-ride that. > what i would have prefered > is a debugger ala Smalltalk where the call history is on a > click and point list in a window and clicking on item in that > list pops up another window with all the arguments listed in another > list. clicking on any one argument would print it to a third window. > sound tricky, right? No. I'm glad that there is a tty interface to some Prolog debuggers, because I'm using a 24x80 terminal here... That's not to say that there shouldn't be additional interfaces. ( -- I agree with Jim Giles about many of the deficiencies of present UNIX.