Chapter 1: Introduction

Bisonc++ is a general-purpose parser generator that converts a grammar description for an LALR(1) context-free grammar into a C++ class to parse that grammar. Once you are proficient with bisonc++, you may use it to develop a wide range of language parsers, from those used in simple desk calculators to complex programming languages.

Bisonc++ is highly comparable to the program bison++, written by Alain Coetmeur: all properly-written bison++ grammars ought to be convertible to bisonc++ grammars after very little or no change. Anyone familiar with bison++ or its precursor, bison, should be able to use bisonc++ with little trouble. You need to be fluent in using the C++ programming in order to use bisonc++ or to understand this manual.

This manual closely resembles bison(1)'s userguide. In fact, many sections of that manual were copied straight into this manual. With bisonc++ distributions (both the full source distribution and the binary .deb distributions) bison's orginal manual is included in both PostScript and (converted from the texi format) HTML format. Where necessary sections of the original manual were adapted to bisonc++'s characteristics. Some sections were removed, some new sections were added to the current manual. Expect upgrades of the manual to appear without further notice. Upgrades will be announced in the manual's title.

The current manual starts with tutorial chapters that explain the basic concepts of using bisonc++ and show three explained examples, each building on its previous (where available). If you don't know bisonc++, bison++ or bison, start by reading these chapters. Reference chapters follow which describe specific aspects of the program bisonc++ in detail.

Bisonc++ was designed and built by Frank B. Brokken. The program's initial release was constructed between November 2004 and May 2005.