[plt-scheme] questions about graphical debugger

From: Gregory Cooper (ghcooper at gmail.com)
Date: Wed Jul 29 11:00:33 EDT 2009

I suspect you're using a language level that does some implicit
expansion of your code before evaluation.  The debugger steps through
the expanded code (whose semantics are somewhat different), and
attempts to map the state of the evaluator back to the original
source.  The issue of #<void> for top-level expressions has come up
before, and I'm not sure why it can't be fixed.  (Eli?)

If you run it in, for example, Pretty Big, I think the results will be
more in line with your expectations.


2009/7/29 Skeptic . <skeptic2000 at hotmail.com>:
> Hi,
> Two questions about the graphical debugger :
> If I debug this procedure :
> (define test  (λ (n)
>                      (cond  [(> n 3) 'x]
>                                [(= n 3) 'y]
>                                [(< n 3) 'z])))
> (test 1)
> 1- Why the step cursor goes on 'x and 'y after showing both results to be
> #f.
> 2- Why when the step cursor is at the end, the result shown is (test 1) =>
> #<void> and not 'z ?
> Thanks.
> ________________________________
> Naviguez plus vite avec Internet Explorer 8 Ici.
> _________________________________________________
>  For list-related administrative tasks:
>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Posted on the users mailing list.