Does anyone know how to trace functions inside a closure? I would like to trace hanoi-move, however find that with MIT Scheme I need to place (trace) within the closure (hanoi n), otherwise the trace will not occur.
Can a trace like this be performed in Racket?
Thanks
(define (hanoi n)
(define (pmd from to)
(display "Move ")
(display from)
(display " to ")
(display to)
(newline)
'())
(define (hanoi-move n from to spare)
(cond ((= n 0) '())
((= n 1) (pmd from to))
(else
(hanoi-move (- n 1) from spare to)
(hanoi-move 1 from to spare)
(hanoi-move (- n 1) spare to from))))
(hanoi-move n "A" "B" "C"))