GNU Bison

Introduction to Bison

Bison is a general-purpose parser generator that converts an
annotated context-free grammar into a deterministic LR or
generalized LR (GLR) parser employing
LALR(1) parser tables. As an
experimental feature, Bison can also
generate IELR(1) or
canonical LR(1) parser tables. Once you are proficient with Bison,
you can use it to develop a wide range of language parsers, from
those used in simple desk calculators to complex programming
languages.

Bison is upward compatible with Yacc: all properly-written Yacc
grammars ought to work with Bison with no change. Anyone familiar
with Yacc should be able to use Bison with little trouble. You need
to be fluent in C or C++ programming in order to use Bison. Java is
also supported as an experimental feature.

Documentation

Documentation for
Bison
is available online, as
is documentation for most GNU software. You may
also find more information about
Bison
by running
info bison
or
man bison,
or by looking at
/usr/share/doc/bison/,
/usr/local/doc/bison/,
or similar directories on your system. A brief summary is available by
running bison --help.

Mailing lists

Bison
has the following mailing lists:

bug-bison
is used to discuss most aspects of
Bison,
including development and enhancement requests, as well as bug reports.

bison-patches
is for patches to the source code, to improve or fix bugs in Bison.
We prefer patches against the latest Savannah sources.

Announcements about
Bison
and most other GNU software are made on
info-gnu
(archive).

Security reports that should not be made immediately public can be
sent directly to the maintainer. If there is no response to an urgent
issue, you can escalate to the general
security
mailing list for advice.

Getting involved

Development of
Bison,
and GNU in general, is a volunteer effort, and you can contribute. For
information, please read How to help GNU. If you'd
like to get involved, it's a good idea to join the discussion mailing
list (see above).

To translate
Bison's
messages into other languages, please see the Translation Project
page for
Bison.
If you have a new translation of the message strings,
or updates to the existing strings, please have the changes made in this
repository. Only translations from this site will be incorporated into
Bison.
For more information, see the Translation
Project.

Maintainer

Bison
is currently being maintained by
Akim Demaille and Paul Eggert.
Please use the mailing lists for contact.

Licensing

Bison
is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free
Software Foundation; either version 3 of the License, or (at your
option) any later version.