Displaying 1 to 20 from 35 results

pegjs - PEG.js: Parser generator for JavaScript

  •    Javascript

PEG.js is a simple parser generator for JavaScript that produces fast parsers with excellent error reporting. You can use it to process complex data or computer languages and build transformers, interpreters, compilers and other tools easily.Online version is the easiest way to generate a parser. Just enter your grammar, try parsing few inputs, and download generated parser code.

lalrpop - LR(1) parser generator for Rust

  •    Rust

Despite its name, LALRPOP in fact uses LR(1) by default (though you can opt for LALR(1)), and really I hope to eventually move to something general that can handle all CFGs (like GLL, GLR, LL(*), etc).

rust-peg - Parsing Expression Grammar (PEG) parser generator for Rust

  •    Rust

This is a simple parser generator based on Parsing Expression Grammars. Please see the release notes for updates.

pigeon - Command pigeon generates parsers in Go from a PEG grammar.

  •    Go

The pigeon command generates parsers based on a parsing expression grammar (PEG). Its grammar and syntax is inspired by the PEG.js project, while the implementation is loosely based on the parsing expression grammar for C# 3.0 article. It parses Unicode text encoded in UTF-8. See the godoc page for detailed usage. Also have a look at the Pigeon Wiki for additional information about Pigeon and PEG in general.


  •    DotNet

Lingua.NET is a .NET-based parser generator. It uses reflection to generate parsers and scanners using code-based scanner and grammar definitions.

ANLP - Another .NET Lexer Parser

  •    Silverlight

This project aims to have a lexer/parser working in Silverlight and help people to write their own grammar and make the lexer/parser available in Silverlight.

Hime Parser Generator

  •    CSharp

The Hime Parser Generator generates lexers and parsers for .Net 2.0 and above. It supports deterministic (LALR) and generalized (GLR) parsing methods.

Gardens Point Parser Generator

  •    CSharp

GPPG is a parser generator that produces parsers written in the C# V2 or higher. The input language is YACC-like, and the parsers are LALR(1), with the usual automatic disambiguations. Designed to work with GPLEX.

grammatica - Grammatica is a C# and Java parser generator (compiler compiler)

  •    Java

Grammatica is a C# and Java parser generator (compiler compiler). It reads a grammar file (in an EBNF format) and creates well- commented and readable C# or Java source code for the parser. It supports LL(k) grammars, automatic error recovery, readable error messages and a clean separation between the grammar and the source code. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the separate LICENCE.txt file for more details.

php-zephir-parser - The Zephir Parser delivered as a C extension for the PHP language.

  •    C

The Zephir Parser delivered as a C extension for the PHP language. NOTE: The development branch will always contain the latest unstable version. If you wish to check older versions or formal, tagged release, please switch to the relevant branch/tag.

leftry - Leftry - A left-recursion enabled recursive-descent parser combinator library for Lua.

  •    Lua

This library is for creating and composing parsers. This creates a parser B that can parse the string "111122222".

paka-js - Parser Combinator for JavaScript

  •    Javascript

Paka.js is a higher-order function based parser combinator. It's designed for creating language parsers in JavaScript. Unlike parser generators such as ANTLR, there's no static code generation involved. When writing language parsers in JavaScript, you can define the language grammar and semantics actions with the embedded DSL of paka.js. The following code implements a working caculator in less than 100 lines of code. The hightlight is that the language grammar is written in the embedded DSL, it's clean and easy to maintain.

human-parser-generator - A straightforward recursive descent Parser Generator with a focus on "human" code generation and ease of use

  •    CSharp

Although many parser generators exist, I feel like there is room for one more, which generates a parser in a more "human" way. EBNF is a (meta-)syntax that can be used to express (context-free) grammars. EBNF is an "extension" to BNF. The Human Parser Generator takes EBNF grammars as input to generate parsers for the language expressed by the grammar.

facio - Tools for building compilers, interpreters, and analysis tools in F#

  •    F#

facio is a collection of tools which assist in implementing compilers, interpreters, and other language-based tools in F#. fsharplex is a tool for generating lexical analyzers ("tokenizers") from a lexer specification file (*.fsl).

ruby-ll - Moved to https://gitlab.com/yorickpeterse/ruby-ll

  •    Ruby

ruby-ll is a high performance LL(1) table based parser generator for Ruby. The parser driver is written in C/Java to ensure good runtime performance, the compiler is written entirely in Ruby. ruby-ll was written to serve as a fast and easy to use alternative to Racc for the various parsers used in Oga. However, ruby-ll isn't limited to just Oga, you can use it to write a parser for any language that can be represented using an LL(1) grammar.

peg - Import of Ian Piumarta's peg/leg recursive-descent parser generators for C

  •    C

peg and leg are tools for generating recursive-descent parsers: programs that perform pattern matching on text. They processes a Parsing Expression Grammar (PEG)[Ford 2004] to produce a program that recognises legal sentences of that grammar. peg processes PEGs written using the original syntax described by Ford.

lingo - parser generator

  •    Crystal

A parser generator for Crystal, inspired by Parslet. The resulting class has a .parse method which returns a tree of Lingo::Nodes.

plex - a parser and lexer generator as a Rust procedural macro

  •    Rust

You can find a demo in examples/demo.rs. Note that nightly Rust is required. First, include plex.

irony - A modified version of the Irony project (https://irony.codeplex.com) with .NET Core support

  •    CSharp

A modified version of the Irony project (https://irony.codeplex.com) with .NET Core support. Irony is a .NET Language Implementation Kit written originally by Roman Ivantsov, you should be able to find his blog related to Irony via http://irony-roman.blogspot.com/. He also developed an ORM framework, VITA, which can be found here.

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.