(defun foo (x) (+ x 3))(trace foo :print 99)(foo 10) =>0: (FOO 10)
0: 99 = 99
0: FOO returned 1313
(trace foo :print x) << undefined variable erro
r
and the doc for var says::condition,:breakandsb-debug:varandsb-debug:argcan be used.
This function returns the value of the variable in the current frame with the specified name.
(trace foo :print (sb-debug:var 'x))
sdfsdf:sdfsdfdebugger invoked on a SB-INT:SIMPLE-READER-PACKAGE-ERROR in thread#<THREAD "main thread" RUNNING {252E78F9}>:
Package SDFSDF does not exist.File-Position: 50Stream: #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDIN* {22436489}>
Good questions, but I can only help on maybe a couple of them. (I
hope others answer the rest.)
The following seems to work in SBCL 1.4.2:
(defun foo (x) (+ x 3))
(trace foo :print (car sb-debug::args))
; and then:
* (foo 10)
0: (FOO 10)
0: (CAR SB-DEBUG::ARGS) = 10
0: FOO returned 13
13
*
As for interrupting in an Emacs shell: I've had various levels of
success over the years with various lisps. Sometimes ^Q^C<RETURN>
works; sometimes meta-x comint-interrupt-subjob works.
Regards,
Matt
Stavros Macrakis (Σταῦρος Μακράκης) <macr...@alum.mit.edu> writes:
> [1:multipart/alternative Hide]
>
>
> [1/1:text/plain Hide]
> [1/2:text/html Show]
>
>
> [2:text/plain Hide]
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>
> [3:text/plain Hide]
>
> _______________________________________________
> Sbcl-help mailing list
> Sbcl...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/sbcl-help
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Sbcl-help mailing list
Sbcl...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sbcl-help
(defun foo (x) (+ x 3))
(trace foo :print (car sb-debug::args))
As for interrupting in an Emacs shell: I've had various levels of
success over the years with various lisps. Sometimes ^Q^C<RETURN>
works; sometimes meta-x comint-interrupt-subjob works.
Hi, I'm trying to debug some Maxima code. I'm running Maxima 5.41.0a_dirty, SBCL 1.3.12., in shell mode in Emacs on Windows 10.I have some very very basic questions that I can't find the answers for in the manual:* How do I invoke backtrace programmatically (not from the debugger command line)?