This page is part of the web mail archives of SRFI 46 from before July 7th, 2015. The new archives for SRFI 46 contain all messages, not just those from before July 7th, 2015.
On Dec 7, 2003, at 4:53 PM, bear wrote:
No, I think this is too complicated. We're talking more about this as syntax than as list structure anyway; I think that making people think in terms of list structure would just confuse the issue.
Graaaagh! This is _Lisp_. Syntax is data, syntax is lists, syntax is S-expressions. If you don't want to think of syntax as lists, then please go use another language, and don't bother us Lispers. On Dec 7, 2003, at 6:27 PM, Alfresco Petrofsky wrote:
What kludginess are you talking about? Your concern is that the addition of an optional positional argument makes the calling convention too hairy, right? I can go along with that assessment, although I think the hairiness of (syntax-rules <ellipsis>? <literals> <rule>+) is actually just shy of being too hairy (and is equihairy with (let <name>? <bindings> <body-elt>+), which seems to work just fine in practice).
OK, sure, but LET isn't likely to be extended any time soon, whereas SYNTAX-RULES (or SYNTAX-RIASTRADH, or whatever) probably is. Named- LET is probably the only extension to the ordinary LET syntax that anyone will ever make, so the kludginess of it doesn't really matter, but with SYNTAX-RULES, more and more kludges are likely to be added to the main syntax.
But the calling convention is a trivial issue compared to the functionality of Choose-Your-Own-Ellipsis. The choice is the thing. I thought people agreed that hygienically binding your identifier of choice to the role of the ellipsis is more flexible and less kludgy than (... ...). As I said in the message in which I proposed the idea, it can work with whatever calling convention you want to specify: positional or keyword.
OK, sorry, I wasn't thinking straight this afternoon (brain freeze from shoveling snow that kept accumulating again at a rapid rate). I retract the post in which I retracted my retraction of (... ...) and I'll write up CYOE in the next draft.
I don't understand why you are still lumping together under the name "syntax-riastradh" two ideas of wildly disparate radicalness: unhygienic identifier insertion (radical -- requires more experimentation and experience before SRFI-dom) and a keyword-tagged argument list (not so radical).
Yes, they are two very different issues, but I'd like to see them together, to not only solve the problem of there being no reliable way to insert identifiers unhygienically but also the problem of kludge upon kludge being added to the syntax of SYNTAX-RULES until it looks like C++ templates. Maybe I ought to refer to the directive issue as SYNTAX-RIASTRADH and the unhygienic issue as SYNTAX-UNHYGIENE (or SYNTAX-ATTACKS! or whatever).