LALR-Parser

Aus testwiki
Version vom 29. Januar 2022, 10:09 Uhr von imported>T. Wirbitzki (Weblink zu JS/CC wird an anderem Ort gepflegt)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Im Compilerbau ist der LALR-Parser (Lookahead-LR-Parser) ein modifizierter LR(1)-Parser. Dabei werden die so genannten LR(1)-Mengen, die unter der Relation 0 identisch sind, zu einer Menge zusammengefasst.

Die Relation 0 ist wie folgt definiert:

a0b die LR(0)-Anteile von a und b stimmen überein.

In einfachen Worten bedeutet das, dass im zuvor berechneten LR(1)-Automaten Zustände zusammengeführt werden, deren Kern identisch ist. Der Kern zweier Zustände ist identisch, falls die Items der beiden Zustände bis auf die Follow-Mengen (Lookaheads) identisch sind.

Siehe auch