Nyquist / XLISP 2.0 -
Contents |
Tutorials |
Examples |
Reference
baktrace
Type: |
- |
function (subr) |
Source: |
- |
xldbug.c, xlsys.c |
Syntax
- (baktrace [level])
- level - an optional integer expression
returns - NIL
Description
The 'baktrace' function is used to examine the system execution stack
from within the
Break Loop. It
shows the nested forms that got the system to the current state. The
Break Loop can be
entered by a system error, or by the Nyquist/XLISP
error, cerror, or
break functions. If the 'levels'
parameter is not specified, all the nested forms will be shown back to the
main loop form that started the execution. If 'level' is
specified the most recent 'level' nested forms will be shown.
Examples
(defun out (x)
(print x)
(mid 99))
(defun mid (x)
(print x)
(in 999))
(defun in (x)
(print x)
(break "in" x)) ; break
> (out 9)
9
99
999
break: in - 999
if continued: return from BREAK
1> (baktrace) ; the 1 before the > indicates a break loop
Function: #<Subr-BAKTRACE: #9af6688>
Function: #<Subr-BREAK: #9af6778>
Arguments:
"in"
999
Function: #<Closure-IN: #9b99574>
Arguments:
999
Function: #<Closure-MID: #9b99670>
Arguments:
99
Function: #<Closure-OUT: #9b99778>
Arguments:
9
NIL
See also:
Back to Top
Nyquist / XLISP 2.0 -
Contents |
Tutorials |
Examples |
Reference