[R6RS] syntax-case

Matthew Flatt mflatt
Wed Apr 13 07:48:11 EDT 2005


At Wed, 13 Apr 2005 08:34:58 +0200, Manuel Serrano wrote:
> > So you have to do the mapping explicitly.  I certainly prefer not to
> > have to do so.
> Why? Why is it an problem to explicit the mapping? Personally I prefer
> the explicit mapping because I prefer to have *all* Scheme for computing
> the outputs. To me, this is one of the beauty of Scheme, I can use
> Scheme to macro-expand Scheme. This is something I whish I had each time
> I write a CPP macro!

I'm sure we all agree with the last point. Certainly, the macro system
should support arbitrary manipulation of syntax through Scheme. The
question is just what the DSL for manipulating syntax should include,
right? 

For my own part, I find `syntax-case' patterns and templates to be a
good DSL for manipulating syntax, although I also frequently escape
into general Scheme and use `map'.

> BTW, up to now only Mike's has expressed an opinion about unified
> pattern matching, I would really love to read you all in order to
> decide is I keep going or if I give up.

The discussion on pattern matching has been interesting, but to me it
illustrates how we won't get anywhere if we spend too much time
innovating, as opposed to standardizing existing practice.

With my editor hat off, I'd very much like to hear more about new
designs for manipulating syntax.

With my editor hat on, though, I'm in favor of simply standardizing on
`syntax-case'. I could also support taking another existing
(implemented, tested, etc.) macro system, if anyone wants to advocate
one.

Matthew



More information about the R6RS mailing list