albert@kim.berkeley.edu (Anthony Albert) (04/14/86)
I am interested in finding out what strategies people have for debugging lisp programs. I am planning to add to Franz Lisp the capability to use techniques which are presently not available. As an example, I'll give my techniques. If it is not obvious from the break message what the error is, I use showstack. If it looks as though examining the state of the stack will give an answer, I'll try debug. If the functions are small enough, trace may be useful. Otherwise I use step. For me, step is the ultimate tool. But there are several problems with stepping. First it is slow. The computations them- selves are slowed down when stepping is enabled. Second, many constructs such as loop macros become hard to understand and tedious to step through as they are expanded. Third, the facilities available for stepping are primitive, e.g., it is hard to set multiple breakpoints, conditional breaks, etc. I believe improvements to stepping can alleviate some of the stepping problems above, but I am interested in finding out what other people do. Either mail to me or post as you see fit; I'll provide a sumary of responses. I will also post the modifications if there is interest. Anthony Albert ..!ucbvax!kim!albert albert@kim.berkeley.edu