Elkhound: A Fast, Practical GLR Parser Generator

  • Authors:
  • Scott G. McPeak

  • Affiliations:
  • -

  • Venue:
  • Elkhound: A Fast, Practical GLR Parser Generator
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Elkhound is an implementation of the Generalized LR (GLR) parsing algorithm [Tomita86, Rekers92] that allows the user to associate arbitrary C++ code with reduction actions, while retaining full control of sharing and disambiguation. Elkhound specifications are similar to those of YACC for LALR(1) grammar fragments, exposing the details of the GLR reduction process only where the grammar requires it. Further, the algorithm itself can switch on a token-by-token basis between GLR and simple LR, achieving very good performance for unambiguous portions of the input. The resulting system is familiar to even casual users of tools like YACC or Bison, but powerful enough to elegantly handle the dark corners of real-world languages.