> The analogous behavior would be for generate-temporaries identifiers to > be given the lexical context of where they are placed in a syntax > template (if/when they are). But because of what generate-temporaries > identifiers are intended for, there's no reason for them to have any > lexical context; they can't refer to anything except introduced bindings > to themselves. Perhaps generate-temporaries should be required to produce identifiers with an empty context then?
On Fri, Jun 19, 2009 at 7:53 PM, Derick Eddington<[email protected]> wrote: > On Fri, 2009-06-19 at 18:39 +1000, Ramana Kumar wrote: >> This section >> http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-1.html#node_toc_node_sec_12.7 >> begins by saying you can introduce a fixed number of identifiers by >> simply naming them, but when you don't know how many identifiers you >> will need you can use generate-temporaries. Now when you introduce >> temporary identifiers by simply naming them, they pick up the context >> of the transformer. So it seems there's an argument that >> generate-temporaries should behave analogously... (which would break >> Aziz's original definition of unbound?). > > The analogous behavior would be for generate-temporaries identifiers to > be given the lexical context of where they are placed in a syntax > template (if/when they are). But because of what generate-temporaries > identifiers are intended for, there's no reason for them to have any > lexical context; they can't refer to anything except introduced bindings > to themselves. > >> What would be missing is a >> way to get at an empty context. > > I'd suggest: (datum->syntax #F <datum>) be made possible. But the only > reason for an empty context is to do the free-identifier=? hack. With a > primitive identifier-bound?, none of this is necessary. > >> Is there any way to remove define and >> syntax from the context of empty-ctxt in (library (foo) (export >> empty-ctxt) (import (only (rnrs) define syntax)) (define empty-ctxt >> (syntax here))) ? > > No. > > -- > : Derick > ---------------------------------------------------------------- > >
