Operator-precedence parser: Difference between revisions

Content deleted Content added
Qsebas (talk | contribs)
No edit summary
No edit summary
Line 2:
This parser can only be used on [[Operator-precedence grammar|Operator-precedence grammars]]
 
An '''operator-precedence parser''' is a simple [[shift-reduce parser]] capable of parsing a subset of [[LR parser|LR(1)]] grammars. More precisely, the operator-precedence parser can parse all LR(1) grammars where two concecutiveconsecutive [[nonterminal]]s never appear in the right-hand side of any rule.
 
Operator-precedence parsers are not used often in practice, however they do have some properties that make them useful within a larger design. First, they are simple enough to write by hand, which is not generally the case with more sophisticated shift-reduce parsers. Second, they can be written to consult an operator table at [[runtime]], which makes them suitable for languages that can add to or change their operators while parsing.