parser-generator

Open-source projects categorized as parser-generator

Top 23 parser-generator Open-Source Projects

  • ANTLR

    ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

  • Project mention: Library to parse slash commands with validation? | /r/dotnet | 2023-06-02

    antlr https://github.com/antlr/antlr4

  • PEG.js

    PEG.js: Parser generator for JavaScript

  • Project mention: Peg.js: Parser Generator for JavaScript | news.ycombinator.com | 2023-11-24
  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • lalrpop

    LR(1) parser generator for Rust

  • Project mention: nom > regex | /r/rust | 2023-12-06

    And some related parser tools: - https://github.com/kevinmehall/rust-peg - https://github.com/pest-parser/pest - https://github.com/lalrpop/lalrpop

  • rust-peg

    Parsing Expression Grammar (PEG) parser generator for Rust

  • Project mention: nom > regex | /r/rust | 2023-12-06

    And some related parser tools: - https://github.com/kevinmehall/rust-peg - https://github.com/pest-parser/pest - https://github.com/lalrpop/lalrpop

  • cpp-peglib

    A single file C++ header-only PEG (Parsing Expression Grammars) library

  • owl

    A parser generator for visibly pushdown languages. (by ianh)

  • bnfc

    BNF Converter

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • ctpg

    Compile Time Parser Generator is a C++ single header library which takes a language description as a C++ code and turns it into a LR1 table parser with a deterministic finite automaton lexical analyzer, all in compile time.

  • Melang

    A script language of time-sharing scheduling coroutine in single thread

  • Project mention: A Time-Sharing Scheduling Coroutine Script Language | /r/programming | 2023-12-05
  • plex

    a parser and lexer generator as a Rust procedural macro (by goffrie)

  • TatSu

    竜 TatSu generates Python parsers from grammars in a variation of EBNF

  • CSLY

    a C# embeddable lexer and parser generator (.Net core)

  • npeg

    PEGs for Nim, another take

  • Project mention: Pratt Parsers: Expression Parsing Made Easy | news.ycombinator.com | 2024-01-20

    Ha, nice to see this on HN: this article was pretty helpful to me to understand the concept a few years back when extending my PEG parsing library [1] with a Pratt parser; this mitigates the problem of PEG parsers not allowing left recursion and allows for a much more concise notation of grammars with operator precedence. Thank you Bob:

    1. https://github.com/zevv/npeg

  • packcc

    A parser generator for C

  • Project mention: A glimpse into the universe where Windows died with the 1980s | news.ycombinator.com | 2024-03-12

    There are languages with perfectly clean grammars which can't be parsed by yacc because they aren't LALR(1).

    I agree that a command processor should have a grammar that can be expressed in a well-known formalism, and its parser generated by a parser generator.

    I agree that both POSIX shell and CMD.EXE are flawed because that isn't true.

    What I'm disagreeing with, is that it is important that the grammar formalism be LALR(1) in particular, and that the parser generator be yacc in particular.

    Suppose I have a Packrat parser generator. [0] And my command processor has a nice clean PEG grammar. And I use the Packrat parser generator to generate the parser of my command processor. That grammar quite possibly isn't LALR(1), and hence yacc in particular won't be able to generate a parser for it. But what's the problem with that? If it is a problem at all, it is a very different problem than the problem that CMD.EXE and POSIX shell have

    [0] e.g. https://github.com/arithy/packcc

  • bison

    GNU Bison (by akimd)

  • ecsharp

    Home of LoycCore, the LES language of Loyc trees, the Enhanced C# parser, the LeMP macro preprocessor, and the LLLPG parser generator.

  • nice-parser

    Nice parsers in OCaml without the boilerplate

  • mints

    lightweight typescript compiler

  • pyUBX

    Python library for parsing/generating u-blox UBX protocol messages, and for creating parsers/generators in other languages.

  • lalr

    LALR(1) parser for C++

  • m2lang

    The LLVM-based Modula-2 compiler

  • Covfefe

    A parser for nondeterministic context free languages

  • pegasus

    A parser generator for C and Crystal. (by DanilaFe)

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

parser-generator related posts

Index

What are some of the best open-source parser-generator projects? This list will help you:

Project Stars
1 ANTLR 16,371
2 PEG.js 4,726
3 lalrpop 2,873
4 rust-peg 1,390
5 cpp-peglib 827
6 owl 733
7 bnfc 566
8 ctpg 448
9 Melang 413
10 plex 399
11 TatSu 391
12 CSLY 334
13 npeg 320
14 packcc 314
15 bison 297
16 ecsharp 168
17 nice-parser 121
18 mints 100
19 pyUBX 81
20 lalr 77
21 m2lang 62
22 Covfefe 59
23 pegasus 57

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com