Lexer and Parser Generators Technical Links & Resources
located in the E-Books, Compilers Categories
|
|
|
|
BtYacc: BackTracking Yacc - A modified version of yacc that supports automatic backtracking and semantic disambiguation to parse ambiguous grammars. It also has syntactic sugar for inherited attributes. |
|
|
CppCC (C++ Compiler Compiler) - a scanner+LL(k = 1..Inf) parser generator for C++. Allows easy top-down description of grammars in an intuitive and extensible manner. Good generated code speed (as comared to GNU Flex/Bison). [Open source |
|
EAG - A compiler compiler that uses the Extended Affix Grammar (EAG) formalism which describes both the context free and context sensitive syntax of language. The compiler generates either a recognizer or a transducer or a translator or a syntax-directed editor |
Elex - A multi-language scanner generator package which generates a scanner (i.e. a lexer) from a specification oriented around regular expressions. Elex differs from most other scanner generators in that it supports multiple languages.
|
|
|
GNU Bison - A general-purpose parser generator that converts a grammar description for an LALR context-free grammar into a C program to parse that grammar. [Open source |
GNU Flex - A fast lexical analyser generator. It is a tool for generating programs that perform pattern-matching on text. There are many applications for Flex |
GOLD Parser - A free parser generator. Unlike common compiler-compilers |
|
Grammatica - Grammatica is a free LL(k) parser generator (compiler compiler) for C
|
Happy - A parser generator for Haskell.
|
Hapy - A runtime parser generator library. It generates parsers from BNF-like language grammars. Parsing scripting languages and communication protocol messages are typical use cases. [Public domain]
|
iburg - A Tree Parser Generator |
IParse - An interpretting parser |
jay - A version of yacc for Java rather than C. Documentation in German.
|
JB2CSharp - A port of the Java-Bison/Flex software developed by the Serl project at the University of Colorado |
|
|
LLgen parser generator - A tool for generating an efficient recursive descent parser from an ELL(1) grammar. The grammar may be ambiguous or more general than ELL(1): there are both static and dynamic facilities to resolve the ambiguities.
|
LLOOP - An object-oriented parser generator. It also allows to perform the reverse operation (expanding) |
oolex (object-oriented lexer) - Approaches lexical analysis by basing the scanner strictly on the object-oriented paradigm. It can be extended without access to the source code in that symbol recognizers can be derived by inheritance and an executing scanner can be reconfigured for dif |
Oops - An object-oriented parser generator implemented in Java.
|
Pattern matching - Pattern matching in syntax analysis as influenced by SNOBOL4. The library distributed under the GNU Library General Public License provides for recursive patterns |
PCCTS Resources and - The primary source of maintenance releases for the PCCTS compiler construction tool set. PCCTS is an LL(k) recursive descent parser generator with semantic predicates and backtracking. It was developed by T.J. Parr.
|
PRECC - A PREttier Compiler-Compiler - an infinite-lookahead parser generator for context dependent grammars which generates ANSI C code. Specification scripts are in very extended BNF with inherited and synthetic attributes allowed. Scripts can be compiled in separate modules and later linked |
ProGrammar - object-oriented grammar definition language and integrated suite of visual tools that assist in building |
Ragel State Machine Compiler - Compiles FSM from regular languages into executable C code. The GPL'ed software can be used to create a parser for any language that is regular. Examples include parsing Unix mailbox files and general lexing tasks.
|
re2c lexer generator - re2c is a tool for writing fast and flexible lexers. A re2c generated scanner is usually 2-3 times faster than a flex based scanner |
Rie - This compiler frontend generation system based on an ECLR-attributed grammar is open source |
SGLR: a Scannerless Generalized LR parser - Interprets parse tables generated from an SDF2 syntax definition. Scannerless means that no scanner is used to tokenize the input stream; the parse table contains enough information for both the lexical and the context-free syntax. [Open source |
Spirit C++ Parser Framework - An object oriented recursive descent parser generator framework implemented using template meta-programming techniques. Expression templates allow to approximate the syntax of Extended Backus Normal Form (EBNF) completely in C++.
|
Styx - A scanner and lalr(1) parser generator. It has features like automatic derivation of depth grammar |
|
|
|
The RDP parser generator - A parser generator which compiles attributed LL(1) grammars decorated with C semantic actions into recursive descent compilers.
|
|
The SYNTAX System - A set of tools for the design and implementation of the front-end part of translators. The SYNTAX tools allow the generation of analyzers and the compilation of source texts with those analyzers. This has all the capabilities of lex and yacc plus some add |
|
Turbo Pascal Lex/Yacc - a compiler generator for Turbo Pascal and compatibles. The package contains two programs |
|
|
|
|
|