in Guile 3.0.5 installed with Guix (as a package manager on top of Ubuntu) In a file I have this simple procedure
(define (f n) (if (< n 3) n (+ (f (- n 1)) (* 2 (f (- n 2))) (* 3 (f (- n 3)))))) it's a variation of the one calculating the Fibonacci numbers, from an exercise of the SICP (1.11) At the REPL, I load the file normally scheme@(guile-user)> (load "1.11.scm") Now, I can trace this procedure scheme@(guile-user)> ,trace (f 4) trace: | (f 4) trace: | | (f 3) trace: | | | (f 2) trace: | | | 2 trace: | | | (f 1) trace: | | | 1 trace: | | | (f 0) trace: | | | 0 trace: | | 4 trace: | | (f 2) trace: | | 2 trace: | | (f 1) trace: | | 1 trace: | 11 But I can't tracepoint it scheme@(guile-user)> ,tp f Trap 0: Tracepoint at #<procedure f (n)>. scheme@(guile-user)> (f 4) Trap 0: (f 4) Trap 0: | (f 3) Trap 0: | | (f 2) ice-9/boot-9.scm:1669:16: In procedure raise-exception: Wrong number of arguments to #<procedure return-handler (frame depth values)> Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue. scheme@(guile-user) [1]> and now I can't even print a backtrace scheme@(guile-user)> (f 4) Trap 0: (f 4) Trap 0: | (f 3) Trap 0: | | (f 2) ice-9/boot-9.scm:1669:16: In procedure raise-exception: Wrong number of arguments to #<procedure return-handler (frame depth values)> Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue. scheme@(guile-user) [1]> ,bt In /home/adriano/Documenti/SICP/1.11.scm: 64:9 4 (f 4) 64:9 3 (f 3) While executing meta-command: In procedure frame-local-ref: Argument 2 out of range: 1 scheme@(guile-user) [1]> and now I can't even trace no more scheme@(guile-user) [1]> ,q scheme@(guile-user)> ,trace (f 4) While executing meta-command: Wrong number of arguments to #<procedure return-handler (frame depth values)> scheme@(guile-user)>