Path: csiph.com!3.us.feeder.erje.net!feeder.erje.net!news.snarked.org!news.linkpendium.com!news.linkpendium.com!news.iecc.com!.POSTED.news.iecc.com!nerds-end From: SLK Newsgroups: comp.compilers Subject: LR(k) Parsing Date: Mon, 23 Dec 2019 10:04:41 -0500 Organization: Compilers Central Lines: 10 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <19-12-024@comp.compilers> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15; format=flowed; delsp=yes Content-Transfer-Encoding: 8bit Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="59451"; mail-complaints-to="abuse@iecc.com" Keywords: LR(1), parse Posted-Date: 23 Dec 2019 21:53:27 EST X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: csiph.com comp.compilers:2405 The SLK Parser Generator implements a variation on LR(k) that might better be called LR(1+k). SLK adds k-lookahead to the LR(1) machine similar to what SLR does to the LR(0) machine, but k instead of just 1. This is the same algorithm that is also used by SLK to add k-lookahead to LL parsing. With simple table compaction the LR(1) parser is not that big for the grammars I have seen. I would be interested in links to LR/LALR test grammars. SLK Parser Generator: http://www.h8dems.com