[plt-scheme] syntax-local-context?

From: jos koot (jos.koot at telefonica.net)
Date: Wed Feb 14 09:30:10 EST 2007

Hi Matthew and Jens Axel
Matthew, thanks for your quick and comforting response. Indeed, turning 
debugging off solves my problem.
Jens Axel, I ignore, but thanks anyway.
Jos

(((((lambda(x)((((((((x x)x)x)x)x)x)x)x))
    (lambda(x)(lambda(y)(x(x y)))))
   (lambda(x)(x)x))
  (lambda()(printf "Greetings, Jos~n"))))
----- Original Message ----- 
From: "Matthew Flatt" <mflatt at cs.utah.edu>
To: "jos koot" <jos.koot at telefonica.net>
Cc: "PLT-list" <plt-scheme at list.cs.brown.edu>
Sent: Wednesday, February 14, 2007 3:11 PM
Subject: Re: [plt-scheme] syntax-local-context?


> At Wed, 14 Feb 2007 14:53:35 +0100, "jos koot" wrote:
>> The following confuses me:
>>
>> (define-syntax (show-local-context stx)
>>  (syntax-case stx ()
>>   ((show-local-context x)
>>    (let ((x (syntax x)))
>>     (printf "~s ~s.~n" (syntax-object->datum x) (syntax-local-context))
>>      x))))
>>
>> (let ((d (show-local-context (add1 2)))) d) ; --> 3
>> ; displayed: (add1 2) top-level.
>>
>> I expected display: (add1 2) expression. Do I misunderstand the manual or
>> (less probably) is this a bug?
>
> It's a bug, now fixed in SVN.
>
> The bug was in the expander for `let-values', and only in the path for
> `expand' (as opposed to compiling directly to bytecode). DrScheme and
> errortrace use `expand', so the bug showed up there, but not in plain
> MzScheme.
>
> Thanks,
> Matthew
>
> 



Posted on the users mailing list.