[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bugs in MACL

Henry Lieberman writes:
>  I'm really sad to see that even the limited stepper that came with
>  earlier versions is now gone.  Hope it comes back and works with CLOS
>  methods. Improvement in debugging tools is the most pressing need for MACL.
In addition to being part of the CL spec, a stepper can be a very useful tool.
MACL should certainly have one.  Also, the current stepper steps something
which is not identical to your source code (is it the macroexpansion of the
source?) which is confusing.  It would be a lot clearer if what was stepped (or
even if what was displayed in the stepping window) was exactly the source.
Also, it would be nice if you had access to a function's lexical environment as
it stepped.  For example, if you are stepping:
     (defun test (param)
       (let ((value1 (my-function1 param))
     	     (value2 (my-function2 param)))
-->      (function...)
(where the --> indicates that you've executed everything before the -->)
you should be able to access value1 and value2 (i.e. print them, inspect them,
call functions on them, ...). The Xerox Interlisp machines had this ability a
decade ago.

>  If Init.Lisp exists and Init.fasl doesn't (load "init") will fail to
>  find the .Lisp file.  LOAD is supposed to load either the fasl file or
>  the source, whichever is newer.
In the case where you tell Lucid CL to (load "bozo") and it observes both a
.lisp and a .sbin it checks the time stamps.  If the .lisp is newer, it gives
you three choices: (1) load .lisp, (2) load .sbin, and (3) compile .lisp and
load it.

Another suggestion for MACL 2.0 is the addition of histories to the listener.
Right now, I'm running Lucid in an emacs buffer and it lets me use Meta-P and
Meta-N to cycle through the commands I've typed at the listener in the past.
This is often more convenient than scrolling back through the buffer to find
the command I want to re-execute.

By the way, MACL is pretty rad.  You guys are doing a great job and your
product is far and away the best environment available outside of the dedicated
lisp machine market.  Good luck with 2.0.