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

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

Hi Alex,

On Wed 11 May 2011 13:41, Alex Shinn <alexshinn@x> writes:

> Are you actually arguing that MIT Scheme, Chicken,
> Chibi, riaxpander and others should have to rewrite
> their entire macro system?  When there's a trivial
> compromise available?

Of course not!

I am arguing two things:

  (1) That if WG2 standardizes on an arity for procedural macro
      transformers, it should be a single-in, single-out thing.  I think
      that's the Right Thing, and I gave a number of arguments
      supporting that premise.  I was hoping that, besides anyone's
      investment in their own schemes, that we could agree on that.

  (2) That a 1-in, 1-out arity does not imply adoption of syntax-case,
      much less of any particular implementation of syntax-case; and
      that furthermore, it is compatible with ER (just stuff the extra
      info into the environment), and the existing implementations that
      use ER, and any other scheme we might imagine.

If a transformation procedure is not exported in some other way by the
system, I am not aware of a way of getting at it, so this does not
affect implementation-defined macros; their internal interface is not
specified.  Chicken will be fine.

The one point where things might change -- and this is a very small part
of the implementation of an expander -- would be the interface to
user-defined syntax transformers.  Invoking user macros with one
composite value takes no more or less work than invoking them with three
separate values.

What do you think?


Scheme-reports mailing list