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

Re: perhaps I've missed something ...



Lars Thomas Hansen wrote:

> It's useful for syntactic (rather than procedural) abstraction.

Equally, by modifying the meaning of an existing (and dangerous"!")
Scheme primitive, it raises the possiblity of bizarre and inadvertent
errors, especially through the use existing macro libraries.  This is
all the more likely given that (a) syntax-rules doesn't support guard
expressions, and (b) the default pattern that a programmer would use
is of the form ?x -- which matches both the old and new forms.  (In
contrast, if the default pattern in library code were (?setter ?x
...), then it wouldn't match an identifier, which would be safe -- but 
this change has it the wrong way around.)

'shriram