Practical Error Recovery for LR Parsers

Thomas J. Pennello, Frank DeRemer · 1977

Abstract : A 'forward move algorithm' and some of its formal properties are presented for use in a practical syntactic error recovery scheme for LR parsers. The algorithm finds a 'valid fragment' (comparable to a valid prefix) just to the right of a point of error detection. For expositional purposes the algorithm is presented as parsing arbitrarily far beyond the point of error detection in a 'parallel' mode, as long as all parses agree on the read or reduce action to be taken at each parse step. In practice the forward move is achieved serially by adding 'recovery states' to the LR machine. Based on the formal properties of the forward move we propose a practical error recovery algorithm that uses the 'right context' accumulated by the forward move. The performance of the recovery algorithm is illustrated in a specific case and discussed in general.

Read the paper · More papers on PaperTik