LALR parsing (con Ply) non deterministico e talvolta fallisce

0

Ho scritto un parser usando la libreria Python Ply.
Durante i test con un file di input ho notato uno strano comportamento: a volte l'input viene analizzato correttamente senza errori e, a volte, vi sono errori di analisi (e il parser non segue le stesse regole e di conseguenza trova errori di sintassi).

Come può accadere perché il parser dovrebbe essere deterministico? La mia grammatica è pulita (nessun conflitto di alcun tipo), e ovviamente il mio input è valido.

Non sto chiedendo un debug (soprattutto perché la grammatica è piuttosto complessa), mi piacerebbe capire come ciò sia possibile e quale potrebbe essere la causa in generale.

    
posta ibi0tux 07.10.2016 - 23:18
fonte

0 risposte

Leggi altre domande sui tag