Current version: 1.0
Release date: August 25, 1999

Basil is a backtracking LR(1) parser generator. Basil reads a grammar file and generates data that can be used to initialize an LR(1) parser with backtracking abilities. Basil also generates the node classes that are used by the parser to construct the abstract syntax tree.

Semantic actions are integrated into the parser by using navigators. Navigators are objects that can traverse the abstract syntax tree, either bottom-up as the tree is being created, or top-down. I have provided a separate utility to help write navigators.

Basil generates C++ code without global variables!

Basil is available in executable form only. Linux and Windows versions are available. The download includes documentation and an C++ simple declaration parser.

Let me know what you think!

Michael Spencer