
Top : Computers : Programming : Compilers :
Lexer and Parser Generators
Categories
| ANTLR @ Java @ Python @ |
Websites
A powerful tool for the automatic generation of Visual Programming Environments. It's new rewoked version of Visual Language Compiler-Compiler (VLCC).
site exerpt
Visual Language Desk Your browser do not support the frame....A modified version of yacc that supports automatic backtracking and semantic disambiguation to parse ambiguous grammars. It also has syntactic sugar for inherited attributes.
site exerpt
Siber Systems BtYacc: BackTracking Yacc Dodd and then further enhanced by Vadim Maslov of Siber Systems to better fit production environment (and to have less bugs, too Instructions (1) Download and unzip 1a) UNIX users: Download file btyacc-3-0.tar.gz. Gunzip and untar distribution file: gunzip btyacc-3-0.tar.gz...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.
site exerpt
oolex homepage Oolex extracts symbols from a sequence of Unicode input characters. It can be extended without access to the source code: symbol recognizers can be derived by inheritance and an executing scanner can be reconfigured for different contexts. Recognizer actions are...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, GPL]
site exerpt
Bison GNU Project Free Software Foundation (FSF) C program to parse that grammar. Once you are proficient with Bison, you can use it to develop a wide range of language parsers, from those used in simple desk calculators to complex programming languages. Bison is upward compatible with...A simple to use translator generator.
site exerpt
Depot4 homepage A simple to use translator generator by Jrgen Lampe Depot4 is an extensible translator-generator. It is easy to use without special knowledge from compiler design. Some basic ideas of formal language theory and familiarity with the EBNF should be enough....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.
site exerpt
LLgen an ELL(1) parser generator Lgen is 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. LLgen is described in...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.
site exerpt
The SYNTAX System Compressed postscript in french) Web page maintained by Didier Parigot Tue Mar 10 12:58:13 MET 1998...object-oriented grammar definition language and integrated suite of visual tools that assist in building, testing and debugging parsers.
site exerpt
NorKen Technologies, Inc. Grammar is designed to help you start building parsers right away I never had any formal training in parser development, push down automata, or any of the other ivory-tower methodologies for creating parsers. Your product definitely makes this stuff approachable...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.
site exerpt
Toy Parser Generator A parser generator in Python Generator is a lexical and syntactic parser generator for Python. This generator was born from a simple statement: YACC is too complex to use in simple cases (calculators, configuration files, small programming languages TPG can very simply write parsers that...A parser generator for Haskell.
site exerpt
Happy: The Parser Generator for Haskell Happy is a parser generator system for Haskell, similar to the tool `yacc for C. Like `yacc it takes a file containing an annotated BNF specification of a grammar and produces a Haskell module containing a parser for the grammar....Very simple LALR(1) open-source parser generator. Outputs C, claims to produce faster parsers than yacc/bison.
site exerpt
The LEMON Parser Generator It takes a context free grammar and converts it into a subroutine that will parse a file using that grammar. Lemon is similar to the much more famous programs YACC and BISON But lemon is not compatible with either 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.
site exerpt
TP Lex/Yacc This is a compiler generator toolset I've written in my spare time when I was a student of Mathematics at the University of Mainz. At that time I used to program a lot in Borland's Turbo Pascal. Being interested in...Tutorial in Lex and Yacc, tools that simplify compiler construction.
http://epaperpress.com/lexandyacc/index.html
Generates fast tree parsers for cost-augmented tree grammars. A variant of iburg is used in the code generators for lcc.
site exerpt
iburg, A Tree Parser Generator Generator iburg is a program that generates fast tree parsers for cost-augmented tree grammars. iburg is useful for writing code generators and for teaching computer science compiler courses. A variant of iburg is used in the code generators for lcc,...Object-oriented rewrite of Lex and Yacc for C++, with automatic AST class generation, grammar inheritance, minimal state ELR(1) and technology. (Commercial package)
site exerpt
No frame support in your browser. Compiler Resources Contact Information Web Site Table of Contents...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.
site exerpt
PCCTS Resources and Notes for New Users His current project is antlr 2 a complete redesign of pccts, written in Java, that generates Java or C Source Code distribution kit for PCCTS 1.33 MR33 (Maintenance Release #33) Released on 21 April 2002. This maintenance release contains about...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, GPL]
site exerpt
CppCC's Home Page Although it is still work in progress (and will probably ever be I think it is ready for real-life use. Currently its been tested on the following platforms: RedHat Linux 7.1 (gcc 2.96) 9.0 (gcc 3.2.x) Solaris/gcc 3.x FreeBSD 4.6-STABLE...The version of BtYacc on siber.com suffers from a few minor, but annoying bugs. This is a page with patches.
site exerpt
a BtYacc patch page Here are patches for btyacc (a backtracking derivative of the old Berkeley parser-generator Yacc The btyacc home page is Siber Systems BtYacc: BackTracking Yacc. Recent work has been done by Richard Atterer as part of his Debian btyacc package. As...All about Lex, Yacc, Flex, and Bison: Overview, Online Documentation, Papers, Tools, Pointers
site exerpt
The LEX YACC Page The asteroid to kill this dinosaur is still in orbit Lex Manual Page ON THIS PAGE Overview Lex Yacc Flex Bison Tools Books OVERVIEW A compiler or interptreter for a programminning language is often decomposed into two parts: Read the...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.
site exerpt
Yet another Object-Oriented Lex (YooLex) HomePage ...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++.
site exerpt
Boost.Spirit Home Examples of designs that meet most of the criteria for goodness easy to understand, flexible, efficient) are a recursive descent parser, which is traditional procedural code. Another example is the STL, which is a generic library of containers and algorithms...Closed-source, but free LALR(2) parser generator, accepts yacc input with some extensions.
site exerpt
Thinkage YAY Y lets you describe the grammar of the input language you want to parse and uses this grammar to generate the parser software. In addition to the usual YACC facilities, YAY supports LR(2) grammars (with two levels of lookahead and...Almost as fast as Bison (for deterministic portions of input), but can parse any context-free grammar. [Open source, BSD]
site exerpt
Elkhound and Elsa Elkhound is a parser generator, similar to Bison. The parsers it generates use the Generalized LR (GLR) parsing algorithm. GLR works with any context-free grammar, whereas LR parsers (such as Bison) require grammars to be LALR(1 Parsing with arbitrary context-free...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.
site exerpt
PRECC A PREttier Compiler-Compiler Specification scripts are in very extended BNF with inherited and synthetic attributes allowed. Scripts can be compiled in separate modules, and linked together later. Meta-production rules are allowed. The technology is essentially LL with optimizations. A converter for yacc scripts...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.
site exerpt
SandStone Technology Click here for our free informative book Parsing with Visual Parse Visual Parse has made my development of parsers and compilers much easier. My products are much more stable using the proven technology of Visual Parse I am able to...(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/pr...nguages/C++/tools/flex++bison++/
A scanner and lalr(1) parser generator. It has features like automatic derivation of depth grammar, production of the abstract syntax tree including its C interface and preserves full source information to faciliate source-source translation.
site exerpt
The Styx Scanner Generator and LALR(1) Parser Generator Styx is a scanner and parser generator designed to address some shortcomings of the traditional lex/yacc combination. It has unique features like automatic derivation of depth grammar, production of the derivation tree including it's C interface which provides access to...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.
site exerpt
Aki Rie is a compiler generator based on attribute grammars. The class of attribute grammars for which attributes can be evaluated in a single pass during parsing without making a parse tree is called one-pass attribute grammars. This class is worth...An object-oriented parser generator implemented in Java.
site exerpt
oops homepage Oops takes a grammar written in EBNF, checks that it is indeed LL(1 i.e suitable for recursive descent parsing, and produces a parser as a set of serialized objects. A scanner must be provided and classes satisfying certain interfaces can...A parser generator which compiles attributed LL(1) grammars decorated with C semantic actions into recursive descent compilers.
site exerpt
RHUL Computer Science: Research: Languages Architectures It can automatically build Abstract Syntax Trees using our Reduced Derivation Tree model. It has built-in support for symbol table handling, set manipulation and generalised graph representation. RDP is written in strict ANSI C and produces strict ANSI C. RDP...A small, flexible parsing engine with practically unlimited backtracking capability. [Commercial]
site exerpt
ClearJump This page has moved. If this page doesn't change in a couple of seconds, click this link to go to the new location....Describes how to build Flex using Microsoft Visual C++ 6.0 and .Net.
site exerpt
Redirecting This page is moved to a new site. You are being redirected to new site. Click here if new site does not load Yusuf Motiwala yusuf@motiwala.com...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]
site exerpt
GOLD Parsing System A Free, Multi-Programming Language, Parser D is a free parsing system that you can use to develop your own programming languages, scripting languages and interpreters. It strives to be a development tool that can be used with numerous programming languages and on multiple platforms. Introduction...Yet another Yacc, which accept yacc grammar nad produce C++ template-based reentrant code. [Open Source, BSD license]
http://www.gradsoft.com.ua/eng/Products/YaYacc/yayacc.html
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.
http://members.ozemail.com.au/~mpp/elex/elex.html
An interpretting parser, meaning that it accept on the input a grammar and a source file which should be parsed according to that grammar, and produces an abstract program tree from this. Very compact implementation.
site exerpt
This page now has moved to www.iwriteiam.nl. Please follow the following link: http www.iwriteiam.nl/MM.html Please update your link, or be so kind to inform the maintainer of the refering page about the change....A version of yacc for Java rather than C. Documentation in German.
site exerpt
jay Homepage F and augmented with semantic actions, and generates tables and an interpreter which recognizes the language defined by the grammar and executes the semantic actions as their corresponding phrases are recognized. The grammar should be LR(1 but there are disambiguating...Flex/Bison ports to Win32, includes MAN pages, and email list for peer to peer support.
site exerpt
Lex/YACC (actually FLEX and BISON) Below is a straight port and compilation of FLEX and BISON to the WIN32 platform. If you want to use FLEX, the flex.exe file is an executable for the WIN32 platform. If you want to use BISON, then download bison.exe,...A port of the Java-Bison/Flex software developed by the Serl project at the University of Colorado, Boulder. Parsers and lexers will be able to use C# actions. The open source .NET project Mono has requested the port, and here it is. [Open source, BSD License]
site exerpt
SourceForge.net: JB port to C JB2CSharp) Provide feedback on this page Recently changed page Site Status SF.net Projects JB port to C JB2CSharp) Summary JB port to C JB2CSharp) Stats RSS Summary Admin Home Page Forums Tracker Bugs Support Requests Patches Feature Requests Mail Tasks Docs...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).
site exerpt
Compiler Generator Coco/R R takes a compiler description in the form of an attributed grammar (EBNF syntax with attributes and semantic actions) and translates it into a scanner and a recursive descent parser. The user has to add modules for symbol table handling,...A fast lexical analyser generator. It is a tool for generating programs that perform pattern-matching on text. There are many applications for Flex, including writing compilers in conjunction with GNU Bison. [Open source, GPL]
site exerpt
Flex GNU Project Free Software Foundation (FSF) Flex is a fast lexical analyser generator. It is a tool for generating programs that perform pattern-matching on text. There are many applications for Flex, including writing compilers in conjunction with GNU Bison. Flex is a free implementation of the...Grammatica is a free LL(k) parser generator (compiler compiler) for C# and Java. Support for automatic error recovery, and instant parsing is available.
site exerpt
Grammatica Has Moved Grammatica web site at http grammatica.percederberg.net/index.html....Pattern matching in syntax analysis as influenced by SNOBOL4. The library distributed under the GNU Library General Public License provides for recursive patterns, various iterators and user-defined patterns along with bindings for Ada, K&R C/ANSI C/C++.
site exerpt
match Pattern matching is a powerful tool for syntax analysis. The main idea of pattern matching comes from the SNOBOL4 language (see the wonderful book THE SNOBOL4 PROGRAMMING LANGUAGE by R. E. Griswold, J. F. Poage and I. P. Polonsky Some...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, LGPL]
http://www.cwi.nl/projects/MetaEnv/sglr/
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]
site exerpt
Hapy Hapy is a runtime parser generator library. The Hapy library generates parsers from BNF-like language grammars. Parsing scripting languages and communication protocol messages are typical use cases. Hapy features and goals Hapy goals and distinguishable features are: clean grammar specification...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, and its input model is much more flexible.
site exerpt
re2c Home I have an interest in lexers (I wrote a dynamic lexer called slex as an example for the Spirit parser framework (see http spirit.sf.net I didn't want to see it suffer bit-rot as there are a few bugs which need...Produces compact and efficient table-driven LL(k) parsers in C, C++, C#, and Java. Features include automated grammar transformations, clean EBNF syntax, backtracking, new LL(k) algorithms, and an uncomplicated API.
site exerpt
SLK Parser Generator LL(k) Parsers, C C C# Java parser generator K algorithm is the only known near-solution to this NP-complete problem. Other deterministic algorithms must either limit k to a very small value, usually two, or use approximate lookahead methods that are considerably weaker than the strong LL(k) method. SLK...Port of lex and yacc to Delphi 3. Base at port to Turbo Pascal.
site exerpt
TP Lex/Yacc 3.0 for Delphi Yacc library and templates for Delphi compatibility. Original TP Lex/Yacc 3.0a distribution included (written by Albert Graef Replacement library free for personal and commercial use. For original Lex/Yacc 3.0a distribution copyright see source code. Files zipped distribution (230 KB) Last...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.
site exerpt
Ragel State Machine Compiler Ragel compiles finite state machines from regular languages into executable C/C Objective-C code. Ragel state machines can not only recognize byte sequences as regular expression machines do, but can also execute code at arbitrary points in the recognition of a...A parsergenerator, a simple c++ interpreter and an interactive debugger combined to a visual development environment, which analyzes, evaluates, converts texts immediately.
site exerpt
TextTransformer: HOME Completely revised version 1.0.0 The TextTransformer is a tool for analyzing and remodeling texts. What the program can do, gets clear at some possibilities of application: Multiple replacements of words Extraction of informations Validation of data (syntax check) Calculations and...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.
site exerpt
The Extended Affix Grammars Project Netherlands is a framework for research in specification languages and compiler construction for nondeterministic languages. Extended Affix Grammars (EAG) are an attempt to implement a very general form of Affix Grammars, with very few restrictions. EAG can be used as...An object-oriented parser generator. It also allows to perform the reverse operation (expanding), whereby the original input can be re-constituted or modified.
site exerpt
LLOOP LL Object-Oriented Parser Generator and Object Expander Generator European Rail Software Applications ...An object oriented recursive descent parser generator framework implemented using C++ operator overloading techniques. It is inspired by Spirit, but use only few template classes thus allowing more flexibility and fastest compilation time. [Open source, LGPL]
site exerpt
BerliOS Developer: Project Info Soul Parser Soul is an object oriented recursive descent parser generator framework implemented using C operator overloading techniques. It is inspired by Spirit, but use only few template classes thus allowing more flexibility and fastest compilation time. Development Status: 2 Pre-Alpha Environment:...LRgen is an LALR parser generator and LALR lexer generator, featuring TBNF grammar notation and LALR lexers for parser and compiler development. The lexers and parsers both use the 4MPT technology.
http://parsetec.com/lrgen
Free IDE for Windows featuring the programming language Construct. Stand-alone programs can be built from 14K and up. Notably parsing and generation of VBScript-based translators towards Construct is supported.
http://www.ComputerAdvance.tk