+++ /dev/null
-\ Words useful for debugging
-
-: return-depth
- RSP@ RSP0 - 1- ;
-
-: stack-trace
- RSP@ RSP0 1+ do
- i 0> if
- i @ 1- dup 0> if
- @ dup 0> if
- >name dup 0> if
- cr .name
- else
- cr ." ***"
- drop
- then
- else
- cr ." ***"
- drop
- then
- else
- cr ." ***"
- drop
- then
- else
- cr ." ***"
- drop
- then
-
- loop ;
-
-: trace
- cr ." ---" cr
- ." Return stack depth:" return-depth . cr
- ." Stack trace:"
- stack-trace
- cr ." ---" cr
-
- trace
-;
-
-: abort-with-trace
- stack-trace abort ;