A language-agnostic parser generator.
Write once, parse anywhere.

Waxeye is a parser generator based on parsing expression grammars (PEGs).
It supports C, Java, JavaScript, Python, Ruby and Racket.

How it works

  1. Define your grammar using the waxeye grammar syntax.
  2. Compile the grammar to a parser in your language of choice.
  3. Pass the input string to the parser to get an abstract syntax tree (AST) back.

For a more hands-on demonstration, make sure to check out the demo.


Learn more

Installation instructions are on GitHub. To learn more about using Waxeye, read the manual.