About Open Access
[PhD Thesis] Syntactic analysis of LR(k) languages
Lookup NU author(s)
Professor Tom Anderson
Full text is not currently available for this publication.
A method of syntactic analysis, termed LA(m)LR(k), is discussed theoretically. Knuth's LR(k) algorithm is included as the special case m=k. A simpler variant, SLA(m)LR(k) is also described, which in the case SLA(k)LR(0) is equivalent to the SLR(k) algorithm as defined by DeRemer. Both variants have the LR(k) property of immediate detection of syntactic errors. The case m = 1 k = 0 is examined in detail, when the methods provide a practical parsing technique of greater generality than precedence methods in current use. A formal comparison is made with the weak precedence algorithm. The implementation of an SLA(1)LR(0) parser (SLR) is described, involving numerous space and time optimisations. Of importance is a technique for bypassing unnecessary steps in a syntactic derivation. Direct comparisons are made, primarily with the simple precedence parser of the highly efficient Stanford Algol W compiler, and confirm the practical feasibility of the SLR parser.
Computing Laboratory, University of Newcastle upon Tyne
Newcastle upon Tyne
Newcastle University Library, NE2 4HQ, United Kingdom. Tel: 0044 (191) 222 7657
©2011 Newcastle University Library