;;;; run.scm (use trace) (define (foo x y) (if (zero? x) y (foo (sub1 x) (add1 y)))) (trace foo) (assert (= 10 (foo 10 0))) (define (bar x k) (if (> x 3) (k x) (bar (add1 x) k))) (trace bar) (call/cc (lambda (return) (bar 1 return))) (break foo) (assert (condition-case (begin (foo 1 2) #f) (breakpoint () #t)))