LALR1 parser generator generating C++ code
Bisonc++ is a parser generator like bison, but it generates C++ code
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++.
Bisonc++ expands the concepts initially implemented in bison and bison++, offering a cleaner setup of the generated parser class. The parser class is derived from a base-class, mainly containing the parser's token- and type-definitions as well as several member func- tions which should not be modified by the programmer.
To create the program from its sources, either descend into the bisonc++ directory, or unpack a created archive, cd into its top-level directory and follow the instructions provided in the INSTALL file found there.
Alternatively, binary ready-to-install versions of the Bisonc++ parser generator are available in verious Linux distributions, in particular Debian. See, e.g., https://packages.debian.org/search?keywords=bisonc%2B%2B&searchon=names&suite=all§ion=all
Gitlab's web-pages for Bisonc++ are here: https://fbb-git.gitlab.io/bisoncpp/
Leaders and contributors
Resources and communication
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.