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

Re: [Scheme-reports] [wg2] in support of single-arity procedural syntax transformers

On Wed, May 18, 2011 at 11:50 AM, Eli Barzilay <eli@x> wrote:
> (a) Right, but in the current context it's important to focus on
>    *existing* systems, and non syntax case macro systems that have a
>    single argument input are either non-existent or uncommon enough
>    that I've never seen one.

It was a minor point - future compatibility is not completely irrelevant -
but we can drop it.

> (b) Without such a system to show otherwise, formalizing the current
>    practice is a far better choice as far as a standard goes.

Unfortunately, current practices disagree.

> (c) Formalizing a system that *contradicts* R6RS is ... particularly
>    silly.  Regardless of R7RS being a derivative language or not
>    being one.  Even more so when practically the only argument that I
>    see against accomodating both is some kind of non-technical
>    "discrimination" argument.  ("Non-technical" since it's easy to
>    have both, or only one.)

No, you don't get to turn this around.  It was R6RS that contradicted
reality - the reality that existing syntactic-closures implementations
simply can't support single argument expanders (modulo hypothetical
rewrites to their macro systems discussed in this thread).

WG1 is staying compatible with everything by limiting itself to
syntax-rules.  WG2 is currently being conservative and sticking
to ER, which any reasonably powerful macro system can support.
Neither contradicts R6RS.

If WG2 does support syntax-case, then adding a wrapper is
trivial for existing syntax-case implementations, and makes it
easier for other implementations to support.  It would encourage
more widespread syntax-case support.


Scheme-reports mailing list