
|
|
|
|
Home / Computers / Programming / Compilers / Lexer and Parser Generators
|
| Categories |
|
|
|
|
|
|
|
|
Web Sites
|
- A Compact Guide to Lex and Yacc - Tutorial in Lex and Yacc, tools that simplify compiler construction.
epaperpress.com/lexandyacc/index.html
- AnaGram: LALR Parser Generator - AnaGram provides a powerful grammar notation, special features for maintenance of highly configurable parsers, visual parsing and unique interactive debugging tools, supporting thread-safe parsers. The program produces C/C++ parsers for use on any platform and runs under Win9x/NT. A free trial copy is available.
www.parsifalsoft.com
- Bison++ and Flex++ - (FTP) A retargeting of bison-1 and flex 2.3 to C++, able to generate classes. As with Bison and Flex, these two tools are independent but designed for mutual compatibility. Examples are provided to help in getting started.
ftp://ftp.th-darmstadt.de/pub/programming/languages/C++/tools/flex++bison++
- BtYacc patches: BackTracking Yacc - The version of BtYacc on siber.com suffers from a few minor, but annoying bugs. This is a page with patches.
www.vendian.org/mncharity/dir3/btyacc
- 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.
www.siber.com/btyacc
- ClearParse - A small, flexible parsing engine with practically unlimited backtracking capability. [Commercial]
www.clearjump.com/products/ClearParse.html
- Coco/R compiler generator - Coco/R combines the functionality of the well-known UNIX tools lex and yacc, to form an extremely easy to use compiler generator that generates recursive descent parsers, their associated scanners, and (in some versions) a driver program, from attributed grammars (written using EBNF syntax with attributes and semantic actions) which conform to the restrictions imposed by LL(1) parsing (rather than LALR parsing, as allowed by yacc).
cs.ru.ac.za/homes/cspt/cocor.htm
- Depot4 homepage - A simple to use translator generator.
www.math.tu-dresden.de/wir/depot4
- 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 for a described language.
ftp://hades.cs.kun.nl/pub/eag
- 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.
members.ozemail.com.au/~mpp/elex/elex.html
- Flex for Microsoft Visual C++ 6.0 and .Net - Describes how to build Flex using Microsoft Visual C++ 6.0 and .Net.
www.geocities.com/ymotiwala//flex.html
- Free Software - lex and yacc for Delphi - Port of lex and yacc to Delphi (scroll down to find the link)
dialspace.dial.pipex.com/town/plaza/ag81/freesoft.htm
- GOLD Parser - A free parser generator. Unlike common compiler-compilers, the GOLD Parser does not require you to embed your grammar directly into your source code. Instead, the Builder analyzes the grammar description and saves the parse tables to a separate file. This file can be subsequently loaded by the actual parser engine and used. Currently the GOLD Parser Engine is available in Java, .NET and ActiveX. [Open Source]
www.devincook.com/goldparser
- GradSoft YaYacc - Yet another Yacc, which accept yacc grammar nad produce C++ template-based reentrant code. [Open Source, BSD license]
www.gradsoft.com.ua/eng/Products/YaYacc/yayacc.html
- Happy - A parser generator for Haskell.
haskell.cs.yale.edu/happy
- iburg, A Tree Parser Generator - Generates fast tree parsers for cost-augmented tree grammars. A variant of iburg is used in the code generators for lcc.
www.cs.princeton.edu/software/iburg
- jay - A version of yacc for Java rather than C. Documentation in German.
www.informatik.uni-osnabrueck.de/alumni/bernd/jay
- 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.
www.cs.vu.nl/~ceriel/LLgen.html
- 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 different contexts.
www.inf.uos.de/alumni/bernd/oolex
- Oops - An object-oriented parser generator implemented in Java.
www.inf.uos.de/alumni/bernd/oops
- Parsing Technology - Parser development tools for software developers. Download an LALR grammar analyzer for free, an LALR parser generator for free. Complete compiler front end source code is available for free and 12 BNF grammars. These tools are more complete and modern than lex and yacc.
www.parsetec.com
- 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.
www.polhode.com/pccts.html
- 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 together, and meta-production rules are allowed. Converter for yacc scripts is available.
www.afm.sbu.ac.uk/precc
- ProGrammar - object-oriented grammar definition language and integrated suite of visual tools that assist in building, testing and debugging parsers.
www.programmar.com/main.shtml
- Ragel State Machine Compiler - Compiles FSM from regular languages into executable C code. The GPL'ed software can also be used to create a parser for any language that is regular. Examples include parsing Unix mailbox files and general lexing tasks.
www.essemage.com/ragel
- Rie - This compiler frontend generation system based on an ECLR-attributed grammar is open source, written in C and may be regarded as an extension of Yacc/Bison.
www.is.titech.ac.jp/~sassa/lab/rie-e.html
- 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++.
spirit.sourceforge.net
- Styx - A scanner & lalr(1) parser generator. It has features like automatic derivation of depth grammar, production of the abstract syntax tree including it's C interface and preserves full source information to faciliate source-source translation.
www.speculate.de/styx
- The LEMON Parser Generator - Very simple LALR(1) open-source parser generator. Outputs C, claims to produce faster parsers than yacc/bison.
www.hwaci.com/sw/lemon
- The LEX & YACC Page - All about Lex, Yacc, Flex, and Bison: Overview, Online Documentation, Papers, Tools, Pointers
dinosaur.compilertools.net
- The RDP parser generator - A parser generator which compiles attributed LL(1) grammars decorated with C semantic actions into recursive descent compilers.
www.dcs.rhbnc.ac.uk/research/languages/projects/rdp.shtml
- 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 additional features including better error processing, i.e. an automatic (and tunable) error repair and recovery mechanism.
www-rocq.inria.fr/oscar/www/syntax/syntax-eng.htm
- Toy Parser Generator for Python - TPG is a parser generator for Python. Given a simple attributed grammar, TPG produces a Python Recursive Descent Parser. It is simple and useful for small parsers of everyday life.
christophe.delord.free.fr/en/tpg
- Turbo Pascal Lex/Yacc - a compiler generator for Turbo Pascal and compatibles. The package contains two programs, TP Lex and Yacc, which are approximately compatible with the UNIX utilities Lex and Yacc, but are written in and produce code for the Turbo Pascal programming language. The present version works with all recent flavours of Turbo/Borland Pascal, including Delphi and Free Pascal Compiler, a GPL'ed Turbo Pascal-compatible compiler which currently runs on DOS and Linux.
www.musikwissenschaft.uni-mainz.de/~ag/tply
- Visual Parse++ 4.0 - The tool allows visual design of lexers and parsers for use in C++, Java, Delphi and Visual Basic applications under UNIX, Linux and Windows/NT. New to version 4.0 is support for XML, XPath, XSLT, XPointer, XQL, DTD and Namespaces.
www.sand-stone.com
- VLCC: A Compiler-Compiler for Visual Languages - A powerful tool for the automatic generation of Visual Programming Environments (Windows 3.x/95/NT), generated Borland C++ 4.53 compatible source code.
www.dmi.unisa.it/people/costagliola/www/home/ricerca/vlcc/vlcc.htm
- Yacc++(R) and the Language Objects Library - Object-oriented rewrite of Lex and Yacc for C++, with automatic AST class generation, grammar inheritance, minimal state ELR(1) technology, etc. (Commercial package.)
world.std.com/~compres
- YAY - Yet Another YACC - Closed-source, but free LALR(2) parser generator, accepts yacc input with some extensions.
www.thinkage.ca/english/products/product-yay.shtml
- YooLex (Yet another Object-Oriented Lex) - A Flex like scanner code generator, but it generates C++ scanner classes that are re-entrant and compatible with the newer standard of C++/STL. Multiple scanner classes and instances can co-exist in a program without tweaking of macros.
yoolex.sourceforge.net
|
|
|
|
|