I'm not 100% sure but I think that's right: the marks clobber each other so
that you see the inner frame and a `let`'s body is in tail position wrt to
the let itself. So in this program:
#lang racket/base
(define (f x) (car x))
(let ()
(let ()
(+ (let ()
(let ()
(f #f))
Cool! I thought the existing syntax/loc have already put the correct
source location on the output of the macro, but the inner let is
taking over the stack frame.
On Sat, Aug 14, 2021 at 12:49 AM Sorawee Porncharoenwase
wrote:
>
> Isn’t that a matter of putting more syntax/loc? I tried:
>
> (-def
Isn’t that a matter of putting more syntax/loc? I tried:
(-define-syntax let-syntaxes
(lambda (stx)
(syntax-case stx ()
[(_ ([(id ...) expr] ...) body1 body ...)
(with-syntax ([((tmp ...) ...)
(map
generate-temporaries
(syntax->list (syntax
3 matches
Mail list logo