The automatically generated code may be augmented by hand-written code to augment the power of the resulting parser. == History == In 1965, Donald Knuth invented the LR parser (Left to Right, Rightmost derivation).
("LR" means left-to-right, rightmost derivation.) The LALR parser was invented by Frank DeRemer in his 1969 PhD dissertation, Practical Translators for LR(k) languages, in his treatment of the practical difficulties at that time of implementing LR(1) parsers.
To address this shortcoming, in 1969, Frank DeRemer proposed two simplified versions of the LR parser, namely the Look-Ahead LR (LALR) and the Simple LR parser that had much lower memory requirements at the cost of less language-recognition power, with the LALR parser being the most-powerful alternative.
The first algorithms for LALR parser generation were published in 1973.
In 1977, memory optimizations for the LR parser were invented but still the LR parser was less memory-efficient than the simplified alternatives. In 1979, Frank DeRemer and Tom Pennello announced a series of optimizations for the LALR parser that would further improve its memory efficiency.
In 1977, memory optimizations for the LR parser were invented but still the LR parser was less memory-efficient than the simplified alternatives. In 1979, Frank DeRemer and Tom Pennello announced a series of optimizations for the LALR parser that would further improve its memory efficiency.
In 1982, DeRemer and Tom Pennello published an algorithm that generated highly memory-efficient LALR parsers.
Their work was published in 1982. == Overview == Generally, the LALR parser refers to the LALR(1) parser, just as the LR parser generally refers to the LR(1) parser.
All text is taken from Wikipedia. Text is available under the Creative Commons Attribution-ShareAlike License .
Page generated on 2021-08-05