Joel,

One possible solution would be to allow the grammar writer to
specify weights for a particular reduction.  When a conflict
occurred the one with the greatest weight would be chosen.

A conflict action (which we proposed earlier) could be encoded with these weights so it could choose a reduction before a split could occur.

This weights idea is very grand and it sounds like a huge amount of
work.  I'm not sure the effort is worth it (to implement it and
then to use it).

I have no problem with splits (apart from the performance penalty
they cause).  They are a natural occurrence in a glr grammar.
The whole point is that there is insufficient information at
the split point to make a decision.  Once more tokens have been
parsed, then we have a better idea what needs to be done.
Bison needs to make life easy for people to make decisions when
an ambiguity cannot be resolved.

On the subject of new features.  I have just been bitten (again)
by not being able to execute any actions in when multiple parse
stacks are in existence.  Having a way of specifying a non-deferred
action would solve a recurring problem of mine.

--
Derek M. Jones                              tel: +44 (0) 1252 520 667
Knowledge Software Ltd                      mailto:[EMAIL PROTECTED]
Applications Standards Conformance Testing    http://www.knosof.co.uk


_______________________________________________
help-bison@gnu.org http://lists.gnu.org/mailman/listinfo/help-bison

Reply via email to