Comparison of parser generators

This is an old revision of this page, as edited by 130.208.183.42 (talk) at 00:15, 31 March 2007. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

This is a list of notable compiler-compilers.

Product Type Output Languages Grammar/code Lexer CC platform IDE License
APG CLR C++ Mixed Generated Win32 yes Open Source
AnaGram LALR ANSI C, C++ Mixed Generated Win32 yes Proprietary
ACCENT GLR C Mixed External (Lex) All (ANSI C) no Open source (GPL)
ANTLR LL(k) C++, C#, Java, Python Mixed Generated All (Java) yes Open source (BSD)
Beaver LALR Java Mixed External All (Java) no Open source (BSD)
Bison LALR, GLR C, C++ Mixed External (Flex) GNU/Linux, Unix, Win32 no Open source (GPL)
BYACC LALR C Mixed External Unix, Win32 no Public ___domain
BYACC/J LALR C, Java Mixed External (JFlex) Irix, Linux, Solaris, Win32 no Public ___domain
Coco/R LL(k) C++, C#, Java Mixed Generated All (Java), .NET, Linux no Open source (GPL)
CppCC LL(k) C++ Mixed Generated Unix no Open source (GPL)
CSTools LALR C# Mixed Generated .NET no Open source
CUP LALR Java Mixed External (JLex) All (Java) no Open source (GPL)
Elkhound GLR C++, Ocaml Mixed External Unix, Win32 no Open source (BSD)
Essence LR Scheme Mixed External All (Scheme 48) no Open source
GOLD LALR x86 Assembly, ANSI C, C#, Delphi, Java, Pascal, Python, Visual Basic 6, Visual Basic .NET, Visual C++ Separated Generated Win32 yes Open source (zlib/libpng)
Grammatica LL(k) C#, Java Separated Generated All (Java) no Open source (LGPL)
Happy LALR, GLR Haskell Mixed External Unix, Win32 no Free Software (GPL)
jacc LALR Java Mixed External All (Java) no Open source (BSD)
JavaCC LL(k) Java Mixed Generated All (Java) yes Open source (BSD)
jay LALR BSD yacc retargeted to C# and Java Mixed None All (C or Java) no Open source (BSD)
JetPAG LL(k) C++ Mixed Generated All (C++) no Open source (GPL)
Lemon Parser LALR C Mixed External Unix no Public ___domain
LRgen LALR C++, Any (if you rewrite the skeleton) Separated Generated Win32 yes Proprietary
More Than Parsing LL(1) Java, JavaCC (parser and scanner) Separated Generated All (Java) no Open source (GPL)
Parser Objects LL(k) Java Mixed ? All (Java) no Open source (ZLib/LibPNG)
PRECC LL(k) C ? ? Dos, Unix no ?
Rats! Packrat Java Mixed Generated All (Java) no Open source (LGPL)
SableCC LALR Java (and, with "altgen" engine, C, C++, C#, OCAML and Python) Separated Generated All (Java & various) no Open source (LGPL)
SLK LL(k) C, C++, C#, Java Separated External Win32, Linux no Proprietary
SmaCC LALR(1)/LR(1) Smalltalk Mixed Internal All yes Open source (MIT)
Spirit LL(k) C++ Mixed Internal  - no Open source (Boost)
TextTransformer LL(k) C++ Mixed Generated Win32 yes Proprietary
Visual BNF LR(1) C#, .NET Generated Generated .NET Framework 2.0 yes Proprietary
Visual Parse++ LALR C++, C++, C#, Java Separated Generated Win32 yes Proprietary
Yacc (AT&T) LALR C (other languages available) Mixed External Unix no Open source (various)
YooParse LR C++ ? External (YooLex) ? no Open source (MIT)
LISA LR, LL, LALR, SLR Java Mixed Generated All yes Public Domain

See also

List of compilers