[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Fresh syntax and unintentional capture

This page is part of the web mail archives of SRFI 93 from before July 7th, 2015. The new archives for SRFI 93 contain all messages, not just those from before July 7th, 2015.

On Mon, 26 Jun 2006, Andre van Tonder wrote:

I submit that the conventional model makes it impossible to reliably write helper procedures shared by different macros, since such procedures would have to know all surrounding bound identifiers potentially introduced by all
possible present and future callers.  For example, the helper

 (define (helper) (syntax (list 1 2 3)))

will fail if any future caller inserts the result in code where LIST has been rebound.

By the way, I just want to point out that this example illustrates that
the suggestion in the text:

"This SRFI's generate-temporaries, while intended to generate lists of temporaries as illustrated in the letrec example of Section 3.9, can of course be used to generate single identifiers as well, and library helpers can use that feature to introduce their
own unique bindings if necessary."

does not fully solve the "helper problem".