Results 171 to 180 of about 7,184 (201)
Some of the next articles are maybe not open access.

Semantic routines and LR(k) parsers

Acta Informatica, 1980
Most applications of parsing require that the parser call semantic action routines while processing the input. For LR(k) parsers it is well known that a semantic action routine can be called when the end of a production is recognized. Often, however, it is desirable to call routines at other times. This paper presents fast algorithms that determine,
Cynthia A. Brown, Paul Walton Purdom
openaire   +2 more sources

LR(0) grammars generated by LR(0) parsers

Acta Informatica, 1981
Let ? be an LR(0) parser of a given LR(0) grammar G. Generally, ? does not only parse the words generated by G but also the words of some other LR(0) grammars different from G. In this paper we shall define a class of LR(0) parsers and shall present a characterization and a method for the construction of all LR(0) grammars which can be parsed by a ...
openaire   +2 more sources

Construction of efficient generalized LR parsers

1998
We show how LR parsers for the analysis of arbitrary context-free grammars can be derived from classical Earley's parsing algorithm. The result is a Generalized LR parsing algorithm working at complexity O(n3) in the worst case, which is achieved by the use of dynamic programming to represent the non-deterministic evolution of the stack instead of ...
Miguel A. Alonso   +2 more
openaire   +2 more sources

Construction and Implementation of LR(1) Parsers

1990
This chapter is devoted to the practical issues involved in the construction and use of deterministic LR(1) parsers. We shall show how the practical versions of LR (1) parsers, most notably the LALR (1) parsers, can be constructed efficiently, and we shall present methods for encoding LR(1) parsers as efficient RAM programs. Two versions of RAM program
Eljas Soisalon-Soininen, Seppo Sippu
openaire   +2 more sources

A forward move algorithm for LL and LR parsers

Proceedings of the 1982 SIGPLAN symposium on Compiler construction - SIGPLAN '82, 1982
A wide variety of algorithms have been suggested for the repair of syntactic errors in a computer program. Since there is usually more than one possible repair for any syntax error, many algorithms employ a cost function to guide the the repair, and some [1,3,4,6], guarantee that the repair chosen will be least-cost, according to some definition.
Charles N. Fischer, Jon Mauney
openaire   +2 more sources

Practical Error Recovery for LR Parsers

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.
Frank DeRemer, Thomas J. Pennello
openaire   +2 more sources

Full LR(1) parser generation

ACM SIGPLAN Notices, 1981
Full LR(1) parser generation is discussed and shown to be useful and practical, in contrast to current widespread misconception.
openaire   +2 more sources

Complexity of Extended vs. Classic LR Parsers

2014
For the deterministic context-free languages, we compare the space and time complexity of their LR (1) parsers, constructed in two different ways: the classic method by Knuth [7] for BNF grammars, and the recent one by the authors [2], which directly builds the parser from EBNF grammars represented as transition networks.
A. Borsotti   +3 more
openaire   +2 more sources

Shift-reduce conflicts in LR parsers

ACM SIGPLAN Notices, 1989
In this note, the shift-reduce conflicts of LR(1) and LR(0) are compared. It is concluded that, if LR(1) has no shift-reduce conflicts, or, if the LR(1) shift-reduce conflicts are resolved in favor of the shift, then all shift-reduce conflicts of the corresponding LR(0) can be correctly resolved by the simple rule: resolve in favor of the shift.
openaire   +2 more sources

Syntax-Error Recovery in LR-parsers

1976
An efficient algorithm for error-recovery in LR-parsers is presented. The algorithm is capable of repairing all syntax errors without backtracking, in time proportional to the stack depth. It needs only a small table, a mapping from the states of the parser into the terminal symbols. The algorithm is very similiar to the parser itself. Thus, it has the
openaire   +2 more sources

Home - About - Disclaimer - Privacy