How to Write Seemingly Unhygienic and Referentially Opaque Macros with Syntax-rules
Lambda the Ultimate - Programming Languages Weblog 2018-03-21
Summary:
How to Write Seemingly Unhygienic and Referentially
Opaque Macros with Syntax-rules
By Oleg Kiselyov
This paper details how folklore notions of hygiene and referential transparency of R5RS macros are defeated by a systematic attack. We demonstrate syntax-rules that seem to capture user identifiers and allow their own identifiers to be captured by the closest lexical bindings. In other words, we have written R5RS macros that accomplish what commonly believed to be impossible.