List of compiler-compilers
From Wikipedia, the free encyclopedia
This is an incomplete list of compiler-compilers.
Product | Type | Output Languages | Grammar/code | Lexer | CC platform | IDE | License |
APG | CLR | Pascal | 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 | ANSI C, C#, Delphi, Java, Python, Visual Basic, Visual C++ | Separated | ? | Win32 | yes | Open source (zlib/libpng) |
Grammatica | LL(k) | C#, Java | Separated | Generated | All (Java) | no | Open source (LGPL) |
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) |
LEMON | LALR | C | Mixed | External | Unix | no | Public domain |
LRgen | LALR | C++, Any (if you rewrite the skeleton) | Separated | Generated | Win32 | no | 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 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 |