Abstract

The algorithm we present here generates finite-state automata for potentially unbounded examination of lookahead and stack in order to try to discriminate the conflicting actions of an LRO collection. Furthermore, this algorithm can be considered as an overall model to extend the current LR parser generators preserving (i): the valid prefix property and the traditional error recovery routines of the LR parser; (ii): the LALR(1) context on the LRO collection. The power of acceptance is a subset of Cohen-Culik's LRR, with acceptation of non-LR( k) grammars, allowing a deterministic bottom-up parsing in linear time when this succeeds. The special feature of this method, compared to foregoing endeavours, consists in the use of the stack language so that a good deal of LR( k) grammars not accessible by foregoing methods now becomes acceptable. In terms of practicability, the minimization techniques allow one to get very compact automata as illustrated on the output lists. The generation of complementary tables can be done independently of the parser generator, which makes the connection of this complementary module to any LR parser generator quite easy. We also show some original results regarding LR automata.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call