[plt-scheme] 204.7
At Tue, 1 Jul 2003 19:14:47 -0500, Robby Findler wrote:
> At Tue, 1 Jul 2003 18:03:17 -0600, Matthew Flatt wrote:
> > * Changed top-level `define-syntaxes' to treat zero results
> > from the right-hand side as a kind of abort, so that
> >
> > (define-syntax (id ...) (values))
Though there seems to be no confusion, that was supposed to be
`define-syntaxes'.
> > declares the ids without binding them. This is useful for macros
> > that expand to mutuaully recursive definitions of private variables
> > (like, of course, `package').
>
> Is there any reason not to add some kind of new construct for this
> rather than overloading the meaning of multiple values
It certainly is a hack. Adding a whole new form (which all
program-processing tools must handle) seemed too much to cover an
obscure corner case in the ever-awkward top level, especially in the
short term.
Hacking `define-syntaxes' is particularly expedient, because
program-processing tools must already handle `define-syntaxes' in the
way needed to cover the corner case.
Matthew