Elkhound Overview

Elkhound is a parser generator, similar to Bison. The parsers it generates use the Generalized LR (GLR) parsing algorithm. GLR works with any context-free grammar, whereas LR parsers (such as Bison) require grammars to be LALR(1).

This page is an overview of the implementation. Additional documentation is available:

To download Elkhound and Elsa, see the Elkhound distribution page.

Elkhound requires the following external software:

Build instructions:

  $ ./configure
  $ make
  $ make check
./configure understands these options. You can also look at the Makefile.

Module List:

I used smbase/scan-depends.pl to make dependency diagrams of the parser generator, and the run-time parser.

The parser generator:
Elkhound dependencies
Or as Postscript.

The run-time parser:
GLR Parser dependencies
Or as Postscript.

Miscellanous files:

Interesting subdirectories:

Valid HTML 4.01!