Bison++ is almost identical with bison, but it produces cleaner C++ code. I.e the produced parser consisting of classes and the communication between the parser and the scanner is performed without global variables. To learn bison++ I suggest you first learn the bison (bison.ps or info bison). BTW bison.ps is not for version 1.19 of bison, but almost everything is the same so it doesn't matter much. The man pages (man bison++) explains the bison++ extensions. One difference that needs extra attention is the communication scanner->parser. An example of how this is performed is given in the Example directory.