GNU Bison
Bison is a general -purpose parser generator free from the GNU project. Bison translates a grammar description of a context-free grammar into a C, C - or Java program that can parse a series of tokens, the structure of this grammar follows (so-called LALR parser ). Furthermore, it can also generate more general Tomita parser for ambiguous grammars.
In POSIX mode Bison is compatible with the older Yacc, wherein the other hand, some improvements implemented ( upward compatible ). From a syntax description of a programming language in a format similar to the Backus -Naur form, it generates a parser based on a push-down automaton, which as an element for syntactic analysis along with a lexical scanner like flex ( free alternative to Lex ) as a further program module for the creation of a compilers or interpreters may be employed.
Bison is released as free software under the GNU General Public License ( GPL). It was developed primarily by Robert Corbett. Richard Stallman made it (upwards) compatible with Yacc.
History
Bison was already developed in the second half of the 1980s. Version 1.00 was released on 26 May 1988.
By integrating the (GPL - licensed ) function yyparse ( ) from the Bison code the Parserprogramme generated were also under the GPL. Since Version 1.24, there is an exception by which the output may also be used as proprietary software.