Next: Copying Prev: Introduction Up: Top

Conditions for Using Bison

   Bison grammars can be used only in programs that are free software.
This is in contrast to what happens with the GNU C compiler and the
other GNU programming tools.

   The reason Bison is special is that the output of the Bison
utility--the Bison parser file--contains a verbatim copy of a sizable
piece of Bison, which is the code for the `yyparse' function.  (The
actions from your grammar are inserted into this function at one point,
but the rest of the function is not changed.)

   As a result, the Bison parser file is covered by the same copying
conditions that cover Bison itself and the rest of the GNU system: any
program containing it has to be distributed under the standard GNU
copying conditions.

   Occasionally people who would like to use Bison to develop
proprietary programs complain about this.

   We don't particularly sympathize with their complaints.  The purpose
of the GNU project is to promote the right to share software and the
practice of sharing software; it is a means of changing society.  The
people who complain are planning to be uncooperative toward the rest of
the world; why should they deserve our help in doing so?

   However, it's possible that a change in these conditions might
encourage computer companies to use and distribute the GNU system.  If
so, then we might decide to change the terms on `yyparse' as a matter
of the strategy of promoting the right to share.  Such a change would be
irrevocable.  Since we stand by the copying permissions we have
announced, we cannot withdraw them once given.

   We mustn't make an irrevocable change hastily.  We have to wait
until there is a complete GNU system and there has been time to learn
how this issue affects its reception.

automatically generated by info2www