LR Grammars and Analysers

  • J. J. Horning
Part of the Lecture Notes in Computer Science book series (LNCS, volume 21)


This chapter is concerned with a family of deterministic parsing techniques based on a method first described by Knuth [1965]. These parsers, and the grammars acceptable to them, share most of the desirable properties of the LL(k) family [Chapter 2.B.]. In addition, the class of LR(k)-parsable grammars is probably the largest class accepted by any currently practical parsing technique. The techniques with which we are mostly concerned are, in order of increasing power, LR(0), SLR(1), LALR(1) and LR(1). Collectively, we call these four techniques the LR family [McKeeman 1970] [Aho 1974].


Accessible State Input Symbol Error Entry Terminal Symbol Correct Sentence 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aho, A.V., Johnson, S.C.: LR parsing. Computing Surveys (to appear 1974 ).Google Scholar
  2. 2.
    Aho, A.V., Ullman, J.D.: The theory of parsing, translation and compiling. Volume 1: Parsing 1972. Volume 2: Compiling 1973. Prentice-Hall.Google Scholar
  3. 3.
    Aho, A.V., Ullman, J.D.: Optimization of LR(k) parsers. J. Computer and System Sciences 6, 6 573–602 (1972).CrossRefMATHMathSciNetGoogle Scholar
  4. 4.
    Aho, A.V., Ullman, J.D.: A technique for speeding up LR(k) parsers. SIAM J. Computing 2, 2 106–127 (1973).MATHGoogle Scholar
  5. 5.
    Anderson, T., Eve, J., Horning, J.J.: Efficient LR(1) parsers. Acta Informatica 2, 12–39 (1973).CrossRefMATHMathSciNetGoogle Scholar
  6. 6.
    DeRemer, F.L.: Simple LR(k) grammars. Comm. ACM 14, 453–460 (1971).CrossRefMATHMathSciNetGoogle Scholar
  7. 7.
    Feldman, J.A., Gries, D.: Translator writing systems. Comm. ACM 11, 77–113 (1968).CrossRefMATHGoogle Scholar
  8. 8.
    Joliat, M.L.: On the reduced matrix representation of LR(k) parser tables. University of Toronto, Computer Systems Research Group Techn. Rep. CSRG-28, 1973.Google Scholar
  9. 9.
    Knuth, D.E.: On the translation of languages from left to right. Information and Control 8, 607–639 (1965).CrossRefMATHMathSciNetGoogle Scholar
  10. 10.
    Lalonde, W.R.: An efficient LALR parser generator. University of Toronto, Computer Systems Research Group Tech. Rep. CSRG - 2, 1971.Google Scholar
  11. 11.
    McKeeman, W.M., Horning, J.J., Wortman, D.B.: A compiler generator. Prentice-Hall 1970.Google Scholar
  12. 12.
    Pager, D.: A solution to an open problem by Knuth. Information and Control 17, 462–473 (1970).CrossRefMATHMathSciNetGoogle Scholar
  13. 13.
    Wirth, N., Weber, H.: Euler: a generalization of Algol 60 and its formal description. Comm. ACM 9, 13–25, 89–99 (1966).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1974

Authors and Affiliations

  • J. J. Horning
    • 1
  1. 1.University of TorontoTorontoCanada

Personalised recommendations