From: Marc Mertens
Subject: Lisp Debug version 0.9
Date: 
Message-ID: <381F3FD5.16E319A9@akam.be>
Hello,

I'm pleased to announce version 0.9 of LISP DEBUG, a source level debugger
for the GCL,CMUCL and ACL versions of LISP.

You can find the debugger at:

 http://sunsite.unc.edu/pub/Linux/devel/lang/lisp/lispdebug-0.9.1.tgz
 http://bewoner.dma.be/marclisp/lispdebug-0.9.tgz

A webpage describing the debugger is at:

 http://bewoner.dma.be/marclisp/intro.html

Happy lisping.

Marc Mertens
········@akam.be


A description of LISP DEBUG follows together with a list of differences
with version 0.8.


What is LISP DEBUG.
===================

LISP DEBUG is a lisp source debugger , designed to work with GCL (GNU COMMON LISP),
CMUCL (CMU COMMON LISP),ACL5 (Allegro Common Lisp V5) and CLISP.
LISP DEBUG is released using the GNU licence so you are free to use it.

LISP DEBUG has the following functionality :
 - Graphical interface.
 - Breakpoints (conditional or not) can be set using point and click in the
   source.
 - Watchpoints on variables and expressions can be set using point and click.
 - Evaluation of expressions during debugging is possible
 - Debug controls are :
  - Step , execute the next expression
  - Step Next , execute the next expression at the same level as
    the previous expression.
  - Next , indicate what the next expression is to stop and start executing
    untill this expressions is reached.
  - Continue, continue execution untill finish or the next
 - Profiling of code is possible.
 - Highlighting of executing code.
 - Support for debugging multiple source code.
 - Debug granullity is the lispform level , much finer then linelevel
          debugging.
 - Timetraveling , you can look at the lexical context of already executed steps
          (compare this with frames).
 - Halting is possible before and after executing a form
 - If halted after execution of a form, you have the possibility to change the
   result of the execution of the form.
 - If a debugged program encounters a continuable LISP error, the debugger is
       automatically entered and the problem code is highlighted.
 - You can extend the debugger using a special language that is simular to the
          form definitions in CLTL2. This allows you to add support for your own
          controlstructures added to lisp.
 - Designed to be portable to other lisp's or OS's

LISP DEBUG is developped and tested with the following code :
 - GCL-2.3.
 - CMUCL 18b.
 - CLISP (must be higher or equal then version 1999-07-22 (July 1999))
 - ACL version 5
 - TCL 8.x and Tk 8.x or higher.
 - I'm only able to test LISP DEBUG on my 'linux' system but installing it
   on other systems should be easy provided that :
  - The lisp is CLTL2 compliant
  - The lisp can use sockets.
  - TCL/TK libraries are available (not needed in the LISP system (with the execption of GCL)).
  - Someone has noticed that the GCL version was not working on a SPARC.
 - More porting information is available in the manual.

DIFFERENCES of 0.9 WITH THE 0.8 RELEASE
=======================================

1.1 Corrected numerous bugs like
 - Errors with watch,watch exp and eval if exp is not selfevaluating
 - Misterious hangs during debugging.
 - Interface not accepting some commands from lisp environment
 - If you change from source, the set breakpoints are not highlighted anymore
 - Source of pasted code was not available on 'source' menu.
 - Problem with 'defstruct' in cmucl, this was caused by macro
   expanding in non printable characters , solved by adding option
   debugging macros (default turned off).
 - Profiling was not highlighting correct code.
 - Find works now even if the debugger switched from sources.
 - ...
 - Ps. corrected doesn't mean that I have catched all bugs :(.


1.2. You can change the size of the source,result and command pane.
1.3. Results can be displayed in a separate window.
1.4. Halting is now possible before and after code to be executed.
1.5. If halting after executing code is active , the result of the call
     is shown.
1.6. If halting after executing code is active then you can change the
     result returned.
1.7. If debugged code has an error during executing ,the debugger is
     automatical entered and the code causing the problem is highlighted. This
     behaviour can be turned of if you wish to debug functions containing
     ignore-error , handler-case or other error handling.
     This feature is not available for gcl because it doesn't have
     handler-case.
1.8. You can select a source out of the loaded sources.
1.9. The manual is now also available in html format.