A possible solution/compromise is to *require* that "&name[initial-exp]"
be followed by a braced-delimited literal part, if necessary empty:
&name[initial-exp]{}
This avoids the incompatibility.
I can live with that. I have yet to be convinced once and for all that
initial-expressions are actually as useful as all that. I'd rather
leave them as an optional extension.
...
Probably, but the difference is one of whitespace only, and it makes
(foo &condition [bar 1 2])
and
(foo &condition[bar 1 2])
differ very radically. If initial & was rare, I'd probably feel better
about this, but it's common in SRFI 35 or R6RS code that deals with
conditions.