Hi all,
I'm confused about an aspect of set! and rename transformers. I'll
explain with this example:
#lang racket
;; a macro that uses `syntax-local-value/immediate`
(define-syntax (lookup stx)
(syntax-case stx ()
[(_ id)
(let-values ([(f _) (syntax-local-value/immediate
Asumu,
Your lookup macro's output just tells whether there is a rename somewhere
between the binding for f and its original source binding. Rename
transformers get injected all over the place. To get the real story, turn
your lookup macro into a loop that chases the binding back to the source.
On 2013-05-17 19:51:00 -0400, Carl Eastlund wrote:
That's where the rename comes from.
Ah, thanks! I should've looked closer at the expansion.
(also thankfully it turns out I didn't need any complicated
set!-transformer manipulation to do what I was trying to do)
Cheers,
Asumu
3 matches
Mail list logo