[racket-dev] Uninterned symbols in compiled code
At Fri, 6 Jul 2012 15:19:25 -0400, Carl Eastlund wrote:
> While I'm thinking about this -- since gensym in macros is a common
> error, is it possible we could fix it so that it works? The unique
> marks on generate-temporaries's output are marshalled in a way that
> ensures marks in one module are consistent with others, I believe by
> tracking the originating module. Would it be possible to do the same
> thing with uninterned symbols in compiled code, keeping around a
> reference to the originating module to preserve eq?-ness?
I think this could be made to work in the case of use a gensym for an
identifier. Different bytecode loads would still produce different
gensyms, but an identifier based on a gensym could still get its
binding from the originating module in the same way as an identifier
from `generate-temporaries'. I'll try that out sometime.