2009-12-01 13 views
5

LALR (2) è in grado di gestire l'involucro alternativo in modo naturale (senza alcuna regola speciale, come nel caso di LALR (1))?LALR (2) penzoloni altro

Grazie

risposta

3

È ambiguo, tuttavia, non è un problema, perché un generatore di parser LALR ben educato risolverà l'ambiguità scegliendo lo spostamento anziché la scelta di riduzione. Questo è ciò che vuoi - il "else" da abbinare alla precedente dichiarazione "if". Quindi la conclusione è: non ci sono problemi. Devi solo capire la scelta di default che fa il generatore di parser per tutte le ambiguità di riduzione del turno. Questo valore predefinito può essere sovrascritto con regole di disambiguazione o qualcosa del tipo "% prec" in "yacc".
Ma questo è un argomento più avanzato.

+0

Ottime informazioni! Ho accettato la tua risposta, invece, per essere più elaborata. – Flavius

5

No, il problema penzoloni il resto è un equivoco, per cui nessuna quantità di lookahead aiuta.

Problemi correlati