Name | Website | Parsing Algorithm | Output Languages | Grammar / Code | Lexer | Development Platform | IDE | License
|
ACCENT | [13] | Earley | C | mixed | external | all | no | GNU GPL
|
ANTLR | [14] | LL(*) | C, C++, C#, Java, Python | mixed | generated | Java Virtual Machine | yes | BSD
|
APaGeD | [15] | GLR, LALR(1), LL(k) | D | mixed | generated | all | no | Artistic
|
APG | [16] | Recursive Descent | C, C++, JavaScript | separate | none | all | no | GNU GPL
|
Beaver | [17] | LALR | Java | mixed | external | Java Virtual Machine | no | BSD
|
Bison | [18] | LALR, GLR | C, C++, Java | mixed | external | all | no | GNU GPL
|
Bison++ | [19] | LALR(1) | C++ | mixed | external | POSIX | no | GNU GPL
|
Bisonc++ | [20] | LALR(1) | C++ | mixed | external | POSIX | no | GNU GPL
|
BtYacc | [21] | LALR | C++ | mixed | external | all | no | public domain
|
byacc | [22] | LALR | C | mixed | external | all | no | public domain
|
BYACC/J | [23] | LALR | C, Java | mixed | external | all | no | public domain
|
CL-Yacc | [24] | LALR(1) | Common Lisp | mixed | external | all | no | MIT
|
Coco/R | [25] | LL(k) | C, C++, C#, F#, Java, Ada, Pascal, Modula-2, Oberon, Ruby, Unicon, Visual Basic .NET | mixed | generated | Java Virtual Machine, .NET Framework | no | GNU GPL
|
CookCC | [26] | LALR(1) | Java | mixed | generated | Java Virtual Machine | no | BSD
|
CppCC | [27] | LL(k) | C++ | mixed | generated | POSIX | no | GNU GPL
|
CSP | [28] | LR(1) | C++ | separate | generated | POSIX | no | Apache License 2.0
|
CSTools | [29] | LALR | C# | mixed | generated | .NET Framework | no | proprietary
|
CUP | [30] | LALR | Java | mixed | external | Java Virtual Machine | no | GNU GPL
|
DMS Software Reengineering Toolkit | [31] | GLR | Parlanse | mixed | generated | Microsoft Windows | no | proprietary
|
DParser | [32] | Scannerless GLR | C | mixed | generated | POSIX | no | BSD
|
Dragon | [33] | LR(1), LALR | C++, Java | separate | generated | all | no | GNU GPL
|
Dypgen | [34] | runtime-extensible GLR | OCaml | mixed | generated | all | no | CeCILL-B
|
Elkhound | [35] | GLR | C++, OCaml | mixed | external | all | no | BSD
|
eli | [36] | LALR | C | mixed | generated | POSIX | no | GNU GPL, GNU LGPL
|
Essence | [37] | LR | Scheme 48 | mixed | external | all | no | BSD
|
eu.h8me.Parsing | [38] | GLR | N/A (state machine is runtime generated) | separate | external | .NET Framework | no | BSD
|
eyapp | [39] | LALR(1) | Perl | mixed | external | all | no | Perl
|
Frown | [40] | LALR(k) | Haskell 98 | mixed | external | all | no | GNU GPL
|
GDK | [41] | LALR(1), GLR | C, Lex, Haskell, HTML, Java, Object Pascal, Yacc | mixed | generated | POSIX | no | MIT
|
geyacc | [42] | LALR(1) | Eiffel | mixed | external | all | no | MIT
|
GOLD | [43] | LALR | x86 assembly language, ANSI C, C#, D, Java, Pascal, Object Pascal, Python, Visual Basic 6, Visual Basic .NET, Visual C++ | separate | generated | Microsoft Windows | yes | freeware
|
GPPG | [44] | LALR | C# | separate | external | Microsoft Windows | yes | freeware
|
Grammatica | [45] | LL(k) | C#, Java | separate | generated | Java Virtual Machine | no | GNU LGPL
|
Happy | [46] | LALR, GLR | Haskell | mixed | external | all | no | BSD
|
HiLexed | [47] | LL(*) | Java | separate | internal | Java Virtual Machine | no | GNU LGPL
|
Hyacc | [48] | LR(1), LALR(1), LR(0) | C | mixed | external | all | no | GNU GPL
|
jacc | [49] | LALR | Java | mixed | external | Java Virtual Machine | no | BSD
|
JavaCC | [50] | LL(k) | Java | mixed | generated | Java Virtual Machine | yes | BSD
|
jay | [51] | LALR | C#, Java | mixed | none | Java Virtual Machine | no | BSD
|
JFLAP | [52] | LL(1) | Java | ? | ? | Java Virtual Machine | yes | ?
|
JetPAG | [53] | LL(k) | C++ | mixed | generated | all | no | GNU GPL
|
JS/CC | [54] | LALR(1) | JavaScript, JScript, ECMAScript | mixed | internal | all | yes | Artistic
|
Kelbt | [55] | Backtracking LALR(1) | C++ | mixed | generated | POSIX | no | GNU GPL
|
kmyacc | [56] | LALR(1) | C, Java, Perl, JavaScript | mixed | external | all | no | GNU GPL
|
Lapg | [57] | LALR | C, C++, C#, Java, JavaScript | mixed | generated | Java Virtual Machine | no | GNU GPL
|
Lemon | [58] | LALR | C | mixed | external | all | no | public domain
|
Lime | [59] | LALR(1) | PHP | mixed | external | all | no | GNU GPL
|
LISA | [60] | LR, LL, LALR, SLR | Java | mixed | generated | Java Virtual Machine | yes | public domain
|
LPG | [61] | Backtracking LALR(k) | Java | mixed | generated | Java Virtual Machine | no | EPL
|
LLgen | [62] | LL(1) | C | mixed | external | POSIX | no | BSD
|
LLnextgen | [63] | LL(1) | C | mixed | external | POSIX | no | GNU GPL
|
Menhir | [64] | LR(1) | OCaml | mixed | generated | all | no | QPL
|
Mini Parser Generator | [65] | ? | Python | mixed | generated | all | no | GNU LGPL
|
ML-Yacc | [66] | LALR(1) | ML | mixed | external | all | no | ?
|
Monkey | [67] | LR(1) | Java | separate | generated | Java Virtual Machine | no | GNU GPL
|
More Than Parsing | [68] | LL(1) | Java | separate | generated | Java Virtual Machine | no | GNU GPL
|
ocamlyacc | [69] | LALR(1) | OCaml | mixed | external | all | no | QPL
|
olex | [70] | LL(1) | C++ | mixed | generated | all | no | GNU GPL
|
Parsec | [71] | GLR | Haskell | mixed | none | all | no | BSD
|
Parse::Yapp | [72] | LALR(1) | Perl | mixed | external | all | no | GNU GPL
|
Parser Objects | ? | LL(k) | Java | mixed | ? | Java Virtual Machine | no | zlib
|
PCCTS | [73] | LL | C, C++ | ? | ? | all | no | ?
|
PLY | [74] | LALR(1) | Python | mixed | generated | all | no | MIT License
|
PRECC | [75] | LL(k) | C | separate | generated | MS-DOS, POSIX | no | GNU GPL
|
QLALR | [76] | LALR(1) | C++ | mixed | external | all | no | GNU GPL
|
SableCC | [77] | LALR | C, C++, C#, Java, OCaml, Python | separate | generated | all | no | GNU LGPL
|
SmaCC | [78] | GLR(1), LALR(1), LR(1) | Smalltalk | mixed | internal | all | yes | MIT
|
SLK | [79] | LL(k) | C, C++, C#, Java | separate | external | all | no | proprietary
|
SPARK | [80] | Earley | Python | mixed | external | all | no | MIT
|
Spirit | [81] | Recursive Descent | C++ | mixed | internal | all | no | Boost
|
Styx | [82] | LALR(1) | C, C++ | separate | generated | all | no | GNU LGPL
|
Sweet Parser | [83] | LALR(1) | C++ | separate | generated | Microsoft Windows | no | zlib
|
Tap | [84] | LL(1) | C++ | mixed | generated | all | no | GNU GPL
|
TextTransformer | [85] | LL(k) | C++ | mixed | generated | Microsoft Windows | yes | proprietary
|
Tom | [86] | GLR | C | generated | none | all | no | proprietary
|
TinyPG | [87] | LL(1) | C#, Visual Basic | ? | ? | Microsoft Windows | yes | CPOL 1.0
|
Toy Parser Generator | [88] | Recursive Descent | Python | mixed | generated | all | no | GNU LGPL
|
TP Yacc | [89] | LALR(1) | Turbo Pascal | mixed | external | all | yes | GNU GPL
|
UltraGram | [90] | LALR, LR, GLR | C++, C#, Java, Visual Basic .NET | separate | generated | Microsoft Windows | yes | proprietary
|
Yacc (AT&T) | [91] | LALR | C | mixed | external | POSIX | no | CPL
|
Yacc++ | [92] | LR(1), LALR(1) | C++, C# | mixed | generated or external | all | no | proprietary
|
Yapps | [93] | LL(1) | Python | mixed | generated | all | no | MIT
|
yecc | [94] | LALR(1) | Erlang | separate | generated | all | no | Erlang
|
Visual BNF | [95] | LR(1), LALR(1) | C# | separate | generated | .NET Framework | yes | proprietary
|
Visual Parse++ | [96] | LALR | C, C++, C#, Java | separate | generated | Microsoft Windows | yes | proprietary
|
YooParse | [97] | LR | C++ | mixed | external | all | no | MIT
|
Whale | [98] | LR | C++ | mixed | external | all | no | proprietary
|
Wisent | [99] | LALR(1) | C++, Java | mixed | external | Java Virtual Machine | no | GNU GPL
|
Wormhole | [100] | Pruning (disambiguater), LR, GLR, Scannerless GLR | C, Python | mixed | generated | Microsoft Windows | no | MIT
|
Product | Website | Parsing Algorithm | Output Languages | Grammar / Code | Lexer | Development Platform | IDE | License
|