Command: debugon


The SLI Debug mode allows you to debug SLI programs by tracing
the execution of the individual commands.

In debug mode each SLI instruction is stepped individually. After
each instruction the user can see the next command the contents of
the stack the entire procedure being executed.

It is also possible to set a breakpoint so that variables and stacks
in the procedure context can be examined and modified.

The debug mode is controled by the debug level. Whenever execution
enters a procedure or loop the debug level is increased.
If the procedure is left the debug level is decreased.
The user can specify a max debug level beyond which the debug mode
is suspended.
This way the user can skip over functions which are beyond a certain

The following commands are available:

next - Trace (execute) next command.
continue - Continue this level without debugging
step - Step over deeper levels.
list - list current procedure or loop.
where - show backtrace of execution stack.
stack - show operand stack.
estack - show execution stack.
edit - enter interactive mode.
stop - raise an exception.
help - display this list.
quit - quit debug mode.
show next - show next command.
show stack - show operand stack.
show backtrace- same as 'where'.
show estack - show execution stack.
toggle stack - toggle stack display.
toggle catch - toggle debug on error.
toggle backtrace - toggle stack backtrace on error.
toggle tailrecursion - toggle tail-recursion optimisation.

Note: This mode is still experimental.