Deliberate variable capture. bear (20 Oct 2003 18:24 UTC)
Deliberate variable capture. bear 20 Oct 2003 18:24 UTC
You know, the more I think about scheme macros, the more I think that
failure to allow _deliberate_ variable capture is a bad thing. We
know, up close and personal, how annoying and subtle the bugs are in
dialects like interlisp, etc, where _inadvertent_ variable capture
happened. But we have reacted by walking away and locking the door
instead of figuring out how to use variable capture purposefully and
in well-defined ways. We have made of hygiene a restriction rather
than a tool. And it was supposed to be a tool.
This is out of scope for the current SRFI, but for me the most
fundamental extension to define-syntax or syntax-case that's really
needed is some standardized way of explicitly allowing variables
inside a macro to be captured and breaking hygiene. This would add
more expressive power than metamacros.