[racket] how to trace stack by command line tools?

From: zermelo (zermelo at teletu.it)
Date: Thu Feb 2 14:19:18 EST 2012

On Thu, 02 Feb 2012 12:17:13 -0500, Danny Yoo wrote:

> On Thu, Feb 2, 2012 at 12:59 AM, mikeyao
> <mikeyao2 at gmail.com> wrote:
>> I'm learning scheme and code in emacs and geiser. I want to watch the
>> whole recursive process to understand well. I know drracket can do it.
>> Is it other tools(command line) that can use in emacs?
> 
> 
> A simple tool you can use is the 'racket/trace' library:
> 
>     http://docs.racket-lang.org/reference/debugging.html
> 
> It'll make the execution of a function visible to you.  You have to
> explicitly trace the function you want to watch.
> 
> 
> 
> ---
> 
> There's also an "errortrace" module that can help produce stack traces:
> 
>     http://docs.racket-lang.org/errortrace/using-errortrace.html
> 
> You need to do a little work to hook it into your program.  For an
> example, see the very top startup script of Eric Hanchrow's rudybot:
> 
>     https://github.com/offby1/rudybot/blob/master/freenode-main.rkt
> 
> where you'll see that it has the line:
> 
>     exec racket -l errortrace --require "$0" --main -- ${1+"$@"}
> 
> at the top: that's one way to hook errortrace in. ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users

I have tried trace library but I have a problem.
If I put my definitions in the interactive window, everything is fine. 
But if I put the definitions in the definition window and then I try to 
trace them, I get error "set!: cannot modify a constant: ".
Why?


Posted on the users mailing list.