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.  The easiest way to do this is
by changing the `define' above to `define-for-syntax'.

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

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to