CINXE.COM
Bison - GNU Project - Free Software Foundation
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="author" href="mailto:webmasters@gnu.org" /> <link rel="icon" type="image/png" href="/graphics/gnu-head-mini.png" /> <meta name="ICBM" content="42.355469,-71.058627" /> <link rel="stylesheet" type="text/css" href="/layout.min.css" media="screen" /> <link rel="stylesheet" type="text/css" href="/print.min.css" media="print" /> <!-- Parent-Version: 1.77 --> <!-- This is the template document for GNU web pages. We use server side includes (#include) for common elements, for instance, the very first line of the file. If you're reading this in its expanded form, you can retrieve the original source, with the SSI statements intact, from http://web.cvs.savannah.gnu.org/viewvc/*checkout*/www/server/standards/boilerplate.html?root=www&content-type=text%2Fplain --> <!-- Instructions for adapting this boilerplate to a new project: --> <!-- 1. In the line above starting "Parent-Version:", remove the "$Revision...$" from around the revision number, leaving just Parent-Version: and the number. --> <!-- 2. Replace "baz" with the name of your project. You should be able to do this with search and replace; making sure that the search is case insensitive and that the case of the replacement matches the case of the string found. In Emacs, query-replace will do this when case-fold-search and case-replace are both non-nil and both search and replacement string are given in lower case. --> <!-- 3. Of course update the actual information according to your project, such as mailing lists, project locations, and maintainer name. --> <!-- 4. You can use the patch-from-parent script to semi-automate merging future changes to the boilerplate with your file: http://web.cvs.savannah.gnu.org/viewvc/*checkout*/www/server/standards/patch-from-parent?root=www&content-type=text%2Fplain --> <!-- If you would like to make sure your page validates with HTML5, that would be a good thing. To do that, change the first line from to /server/html5-header.html before trying the validation. Maybe someday we will be able to make /server/header be HTML5. --> <title>Bison - GNU Project - Free Software Foundation</title> <!-- begin /server/gnun/initial-translations-list.html --> <!-- HTML head: set a flag for further expansion in body-include*.html. --> <!-- end /server/gnun/initial-translations-list.html --> <!-- start of server/banner.html --> <!-- start of head-include-2.html --> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" type="text/css" href="/server/banners/fundraiser.css" media="screen" /> <style type="text/css" media="screen"><!-- .progress-bar { width: 15%; } .percentage { text-align: left; left: 100%; padding-right: 1em; padding-left: .5em; } --></style> <style type="text/css" media="screen"> <!-- TRANSLATORS: Change direction to rtl if you translate the fundraiser and your script is right-to-left. --> #fundraiser { direction: ltr; } </style> <!-- end of head-include-2.html --> </head> <body> <div class="inner"> <!-- start of server/body-include-1.html --> <div id="top"> <p><a class="skip" href="#content"><b>Skip to main text</b></a></p> </div> <div id='fundraiser'> <div class="message"> <p class="headline"><b>Come build a better world with us!</b></p> <p><a href="https://my.fsf.org/donate?mtm_campaign=fall24&mtm_source=banner">Please don't scroll past this. We've been building a better world with free software since 1985. Today, we ask for your support. Only with your help can the FSF continue to be the cornerstone of a more just digital society! Donate to help us reach the goal of USD $400,000 by Dec 31.<span class="gnun-split"></span></a></p> <p class="button"><a href="https://my.fsf.org/donate?mtm_campaign=fall24&mtm_source=banner">Donate<span class="gnun-split"></span></a> </p> <div style="clear: both"></div> </div><!-- .message --> <div class="progress"> <div class="progress-bar"><span class="percentage">$60,390</span></div> <span class="goal">$400,000<span class="gnun-split"></span> </span> </div><!-- .progress --> </div><!-- #fundraiser --> <div style="clear: both"></div> <div id="header" role="banner"> <p id="gnu-banner"> <a href="/"> <img src="/graphics/heckert_gnu.transp.small.png" height="48" width="49" alt=" [A GNU head] " /><strong>GNU</strong> <span class="hide">Operating System</span></a><br /> <small id="fsf-support">Supported by the <a href="#mission-statement">Free Software Foundation</a></small> </p> <div id="switches"> <div id="search-button" class="switch"> <a href="//www.gnu.org/cgi-bin/estseek.cgi"> <img id="search-icon" height="30" width="30" src="/graphics/icons/search.png" alt=" [Search www.gnu.org] " /></a> </div> </div><!-- #switches --> </div><!-- #header --> <!-- end of server/body-include-1.html --> <!-- start of server/body-include-2 --> <div style="clear: both"></div> <div id="navigation" role="navigation"> <a id="more-links" href="#navigation" title="More..."> <span>Site navigation</span></a> <a id="less-links" href="#content"><b>Skip</b></a> <ul> <li id="tabAboutGNU"><a href="/gnu/gnu.html">ABOUT GNU</a></li> <li id="tabPhilosophy"><a href="/philosophy/philosophy.html">PHILOSOPHY</a></li> <li id="tabLicenses"><a href="/licenses/licenses.html">LICENSES</a></li> <li id="tabEducation"><a href="/education/education.html">EDUCATION</a></li> <li id="tabSoftware" class="active"> <span class='no-display'>=</span> <a href="/software/software.html">SOFTWARE</a> <span class="gnun-split"></span> <span class='no-display'>=</span> </li> <li id="tabDistros"><a href="/distros/distros.html">DISTROS</a></li> <li id="tabDoc"><a href="/doc/doc.html">DOCS</a></li> <li id="tabMalware"><a href="/proprietary/proprietary.html">MALWARE</a></li> <li id="tabHelp"><a href="/help/help.html">HELP GNU</a></li> <li id="tabAV"><a href="/audio-video/audio-video.html">AUDIO & VIDEO</a></li> <li id="tabArt"><a href="/graphics/graphics.html">GNU ART</a></li> <li id="tabFun"><a href="/fun/humor.html">FUN</a></li> <li id="tabPeople"><a href="/people/people.html">GNU'S WHO?</a></li> <li><a href="//directory.fsf.org">SOFTWARE DIRECTORY</a></li> <li><a href="https://h-node.org/">HARDWARE</a></li> <li><a href="/server/sitemap.html">SITEMAP</a></li> </ul> <div style="clear: both"></div> </div><!-- /"navigation --> <!-- end of server/body-include-2 --> <div id="content" role="main"> <!-- end of server/banner.html --> <h2>GNU Bison</h2> <h3>Introduction to Bison</h3> <p> Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing <abbr title="lookahead LR">LALR</abbr>(1) parser tables. As an experimental feature, Bison can also generate <abbr title="Inadequacy Elimination LR">IELR</abbr>(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. </p> <p> 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. </p> <h3 id="download">Downloading Bison</h3> <p>Bison can be found on the main GNU ftp server: <a href="http://ftp.gnu.org/gnu/bison/">http://ftp.gnu.org/gnu/bison/</a> (via HTTP) and <a href="ftp://ftp.gnu.org/gnu/bison/">ftp://ftp.gnu.org/gnu/bison/</a> (via FTP). It can also be found on the <a href="/prep/ftp.html">GNU mirrors</a>; please <a href="http://ftpmirror.gnu.org/bison/">use a mirror</a> if possible.</p> <h3 id="documentation">Documentation</h3> <p><a href="manual/">Documentation for Bison</a> is available online, as is <a href="/manual/">documentation for most GNU software</a>. You may also find more information about Bison by running <em>info bison</em> or <em>man bison</em>, or by looking at <em>/usr/share/doc/bison/</em>, <em>/usr/local/doc/bison/</em>, or similar directories on your system. A brief summary is available by running <em>bison --help</em>.</p> <h3 id="mail">Mailing lists</h3> <p>Bison has the following mailing lists:</p> <ul> <li><a href="https://lists.gnu.org/mailman/listinfo/bug-bison">bug-bison</a> is used to discuss most aspects of Bison, including development and enhancement requests, as well as bug reports.</li> <li><a href="https://lists.gnu.org/mailman/listinfo/help-bison">help-bison</a> is for general user help and discussion.</li> <li><a href="http://lists.gnu.org/mailman/listinfo/bison-patches">bison-patches</a> is for patches to the source code, to improve or fix bugs in Bison. We prefer patches against the latest Savannah sources.</li> </ul> <p>Announcements about Bison and most other GNU software are made on <a href="http://lists.gnu.org/mailman/listinfo/info-gnu">info-gnu</a> (<a href="http://lists.gnu.org/archive/html/info-gnu/">archive</a>).</p> <p>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 <a href="http://lists.gnu.org/mailman/listinfo/security">security</a> mailing list for advice.</p> <h3 id="contribute">Getting involved</h3> <p>Development of Bison, and GNU in general, is a volunteer effort, and you can contribute. For information, please read <a href="/help/">How to help GNU</a>. If you'd like to get involved, it's a good idea to join the discussion mailing list (see above).</p> <dl> <dt>Test releases</dt> <dd>Trying the latest test release (when available) is always appreciated. Test releases of Bison can be found at <a href="http://alpha.gnu.org/gnu/bison/">http://alpha.gnu.org/gnu/bison/</a> (via HTTP) and <a href="ftp://alpha.gnu.org/gnu/bison/">ftp://alpha.gnu.org/gnu/bison/</a> (via FTP).</dd> <dt>Development</dt> <dd>For development sources, issue trackers, and other information, please see the <a href="http://savannah.gnu.org/projects/bison/">Bison project page</a> at <a href="http://savannah.gnu.org">savannah.gnu.org</a>.</dd> <dt>Translating Bison</dt> <dd>To translate Bison's messages into other languages, please see the <a href="http://translationproject.org/domain/bison.html">Translation Project page for Bison</a>. 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 <a href="http://translationproject.org/html/welcome.html">Translation Project</a>.</dd> <dt>Maintainer</dt> <dd>Bison is currently being maintained by Akim Demaille and Paul Eggert. Please use the mailing lists for contact.</dd> </dl> <h3 id="license">Licensing</h3> <p>Bison is free software; you can redistribute it and/or modify it under the terms of the <a href="http://www.gnu.org/licenses/gpl.html" rel="license">GNU General Public License</a> as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.</p> </div><!-- for id="content", starts in the include above --> <!-- begin server/footer-text.html --> <div style="clear:both"></div> <div id="mission-statement" role="complementary"> <div class="backtotop"> <hr class="no-display" /> <a href="#header"><span>BACK TO TOP </span>▲</a> </div> <div style="clear: both"></div> <blockquote> <p style="direction:ltr; text-align:left"><a href="//www.fsf.org"><img id="fsfbanner" src="/graphics/fsf-logo-notext-small.png" alt=" [FSF logo] " width="75" height="25" /></a><strong> “The Free Software Foundation (FSF) is a nonprofit with a worldwide mission to promote computer user freedom. We defend the rights of all software users.”</strong></p> </blockquote> <div id="support-the-fsf" class="button"> <a class="join" href="//www.fsf.org/associate/support_freedom?referrer=4052">JOIN</a> <a class="donate" href="//donate.fsf.org/">DONATE</a> <a class="shop" href="//shop.fsf.org/">SHOP</a> </div> </div> <!-- end server/footer-text.html --> <div id="footer"> <div class="unprintable"> <p>Please send general FSF & GNU inquiries to <a href="mailto:gnu@gnu.org"><gnu@gnu.org></a>. There are also <a href="/contact/">other ways to contact</a> the FSF. Broken links and other corrections or suggestions can be sent to <a href="mailto:bug-bison@gnu.org"><bug-bison@gnu.org></a>.</p> <p><!-- TRANSLATORS: Ignore the original text in this paragraph, replace it with the translation of these two: We work hard and do our best to provide accurate, good quality translations. However, we are not exempt from imperfection. Please send your comments and general suggestions in this regard to <a href="mailto:web-translators@gnu.org"> <web-translators@gnu.org></a>.</p> <p>For information on coordinating and submitting translations of our web pages, see <a href="/server/standards/README.translations.html">Translations README</a>. --> Please see the <a href="/server/standards/README.translations.html">Translations README</a> for information on coordinating and submitting translations of this article.</p> </div> <!-- Regarding copyright, in general, standalone pages (as opposed to files generated as part of manuals) on the GNU web server should be under CC BY-ND 3.0 US. Please do NOT change or remove this without talking with the webmasters or licensing team first. Please make sure the copyright date is consistent with the document. For web pages, it is ok to list just the latest year the document was modified, or published. If you wish to list earlier years, that is ok too. Either "2001, 2002, 2003" or "2001-2003" are ok for specifying years, as long as each year in the range is in fact a copyrightable year, i.e., a year in which the document was published (including being publicly visible on the web or in a revision control system). There is more detail about copyright years in the GNU Maintainers Information document, www.gnu.org/prep/maintain. --> <p>Copyright © 2014 Free Software Foundation, Inc.</p> <p>This page is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nd/3.0/us/">Creative Commons Attribution-NoDerivs 3.0 United States License</a>.</p> <!-- start of server/bottom-notes.html --> <div id="bottom-notes" class="unprintable"> <p><a href="//www.fsf.org/about/dmca-notice">Copyright Infringement Notification</a></p> <div id="generic"> </div> </div> <!-- end of server/bottom-notes.html --> <p class="unprintable">Updated: <!-- timestamp start --> $Date: 2014/08/06 15:37:12 $ <!-- timestamp end --> </p> </div> </div> </body> </html>