[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Corrected version, performance, withdrawal?
Andre van Tonder wrote:
So unless the performance problem can be ameliorated, giving a practical
and truly portable implementation based on SYNTAX-RULES, there may be a
case for withdrawal. Possible reasons for keeping it alive regardless
of current performance are its conceptual simplicity (this remains a pure
rewriting system, without the phase separation complexities of
syntax-case), and the possibility that future additions to SYNTAX-RULES
may enable a more efficient implementation (however, it seems more likely
that something like SYNTAX-CASE will become part of the standard).
I'm less than thrilled with syntax-case, mainly because it is so poorly
specified. In fact there is no specification, just a bunch of neat
examples of what you can do with it. But as an example I haven't seen
any discussion of what is supposed to happen if a syntax transformer
references a run-time variable. I've found the implementation and the
description of syntax-case hard to understand, and not at all intuitive.
The "portable" implementation is far from a direct drop-in to an
existing implementation that aready supports macros, and figuring out
what needs to be changed is non-trivial. I've started studying the
implementation more than once, and decided I decided I have more
important things to do.
On the other hand a syntax library like srfi-53 should be much easier to
incorporate, even if I have to add a few new primitives.