[r6rs-discuss] expansion process and syntax-case?

Eli Barzilay eli at barzilay.org
Thu Jan 15 22:15:32 EST 2009


On Jan 15, Per Bothner wrote:
> Eli Barzilay wrote:
> > On Jan 15, Per Bothner wrote:
> >> Is this (rough sketch) supposed to work:
> >>
> >> (define (process form)
> >>    ... do something with form ...)
> >>
> >> (define-syntax foo
> >>    (lambda (form)
> >>       (syntax-case form ()
> >>          ((_ . f) (process form)))))
> >>
> >> (foo ...)
> >>
> >> I.e. can a syntax-case macros make use of a function
> >> define in the same module or top-level?
> > 
> > Yes, but syntax processing still happens at a different phase, so you
> > need to lift the `process' definition.
> 
> Chapter 10 does not contain the word "phase".  Where is this
> concept described in the R6RS documents?

I posted my reply by mistake, thinking that it was on the PLT list.

-- 
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!



More information about the r6rs-discuss mailing list