Luke Palmer wrote:

I understand the association with C<$?foo>.  But most of the time, when
I'm writing a grammar, I'm catching these rules in order to stick them
in the parse tree, not to do tests on them later on in the rule.  The
very essence of rules is hypotheticality, where nothing is permanent
until it gets to the end.  I don't think we need a special marker that
says "these do that, too."

We need the marker to distinguish between hypothetical captures to internal variables:


/ $?foo:=(abc) $?bar:=(def) /

and non-hypothetical captures to external variable:

/ $foo:=(abc) $bar:=(def) /

And since subrules that capture always capture to hypotheticals, we need the same marker there.

Damian



Reply via email to