[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question about "Conditions for Using Bison" in Bison 2.0 documentati
Re: Question about "Conditions for Using Bison" in Bison 2.0 documentation
Fri, 11 Mar 2005 12:27:55 +0100
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7) Gecko/20040616
Paul Eggert wrote:
Sylvain Schmitz <address@hidden> writes:
It might have been true when these skeleton first appeared, but I
don't think it is any more, since both commercial and open source
implementations exist now.
OK, let's solve the problem. The first step: could you please come up
with a brief list of the commercial and other alternative
implementations, as compared to Bison? If we present such a list to
RMS in a concise and pragmatic way, he'll most likely change his mind,
just as he changed his mind for the yacc skeleton.
GLR parser generators:
* Elkhound [http://www.cs.berkeley.edu/~smcpeak/elkhound/] generates GLR
parsers in C++ or OCaml, and is distributed under the revised BSD
license. The GLR algorithm used is AFAIR very close to the one in bison.
* DParser [http://dparser.sourceforge.net/] generates GLR parsers in C,
distributed under BSD license. It also provides scannerless support.
* PyGgy [http://www.lava.net/~newsham/pyggy/] generates GLR parsers in
Python, but based on SLR tables instead of the LALR ones. It is in the
* Happy [http://haskell.cs.yale.edu/happy/] just added GLR support; it
generates parsers in Haskell, and is distributed under a BSD-style license.
* SGLR [http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/SGLR] also
provides scannerless support, and is distributed under the GPL.
There might be plenty of others. Some of these generate parsers in C++.
Other parser generator targeting C++ include ANTLR predicated LL
parser generator [http://www.antlr.org/] (in public domain), the GOLD
LALR(1) parser [http://www.devincook.com/goldparser/] distributed under
the zlib/libpng license, the Spirit framework
[http://spirit.sourceforge.net/] for backtracking LL distributed under a
permissive license, and so on and so forth.
Commercial software is also available, but more difficult to find.