awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

11 个仓库

Awesome GitHub RepositoriesParser Generators

Tools for generating lexers and parsers from grammar definitions.

Explore 11 awesome GitHub repositories matching part of an awesome list · Parser Generators. Refine with filters or upvote what's useful.

Awesome Parser Generators GitHub Repositories

用 AI 发现最棒的仓库。我们将通过 AI 为您搜索最匹配的仓库。
  • ocaml/ocamlocaml 的头像

    ocaml/ocaml

    6,514在 GitHub 上查看↗

    OCaml is a strongly typed functional language featuring a sophisticated type system and a focus on safety and expressiveness. It provides a comprehensive compiling toolchain that transforms source code into either portable bytecode or high-performance native binaries. The project is distinguished by a shared memory parallel runtime that executes computations across multiple processor cores using domains, and an algebraic effect system for managing side effects and control flow through execution context handlers. It also includes a dedicated parser generator to automatically create lexers and

    Ships a parser generator to automatically create lexers and parsers from defined grammar files.

    OCamlcompilerfunctional-languageocaml
    在 GitHub 上查看↗6,514
  • ohmjs/ohmohmjs 的头像

    ohmjs/ohm

    5,471在 GitHub 上查看↗

    Ohm is a formal grammar parser generator and domain-specific language framework. It provides a system for defining custom languages to parse, validate, and extract data from input text, transforming raw strings into hierarchical abstract syntax trees based on specified formal rules. The project utilizes an Earley parsing algorithm, which allows it to support all context-free grammars, including those with left recursion and ambiguity, without requiring predefined operator precedence. It also includes a dedicated debugging toolkit for tracing and visualizing the step-by-step state transitions

    Uses the Earley parsing algorithm to support all context-free grammars, including those with left recursion.

    JavaScriptcompilergrammarsjavascript
    在 GitHub 上查看↗5,471
  • pest-parser/pestpest-parser 的头像

    pest-parser/pest

    5,355在 GitHub 上查看↗

    Pest 是一个 Rust 解析库和自动解析器生成器,可将形式语法定义转换为功能性解析器。它专注于解析表达式语法(PEG)以识别和结构化复杂的文本模式,提供了一个用于上下文无关语法解析的系统。 该库实现了零拷贝标记化和静态语法编译,以减少运行时开销。它支持 no-std 运行时兼容性,允许解析器在没有标准库的嵌入式或裸机环境中编译。 该项目涵盖了一系列解析功能,包括嵌套标记对的提取和自动语法验证。它用于实现领域特定语言(DSL)、自定义语言解析和数学表达式求值。它还提供自动错误报告以识别意外标记或缺失输入。

    PEG parser generator for Rust.

    Rust
    在 GitHub 上查看↗5,355
  • hardmath123/nearleyHardmath123 的头像

    Hardmath123/nearley

    3,740在 GitHub 上查看↗

    Nearley is a JavaScript parser toolkit used to define context-free grammars and generate corresponding parsers. It features an EBNF grammar compiler that transforms language definitions written in extended Backus-Naur Form into executable JavaScript code, utilizing an Earley parser implementation to process any context-free grammar. The toolkit distinguishes itself by its ability to handle left-recursion and ambiguity without failing, allowing it to identify and return multiple valid derivations for a single input string. It also includes a grammar fuzzing generator to produce random strings

    Simple and fast parser toolkit for JavaScript.

    JavaScript
    在 GitHub 上查看↗3,740
  • kevinmehall/rust-pegkevinmehall 的头像

    kevinmehall/rust-peg

    1,598在 GitHub 上查看↗

    Parsing Expression Grammar (PEG) parser generator for Rust

    PEG parser generator for Rust.

    Rustgrammarparser-generatorparsing
    在 GitHub 上查看↗1,598
  • philippesigaud/peggedPhilippeSigaud 的头像

    PhilippeSigaud/Pegged

    547在 GitHub 上查看↗

    A Parsing Expression Grammar (PEG) module, using the D programming language.

    Parser generator for PEG grammars in D.

    D
    在 GitHub 上查看↗547
  • alex/rplyalex 的头像

    alex/rply

    392在 GitHub 上查看↗

    An attempt to port David Beazley's PLY to RPython, and give it a cooler API.

    Port of a parsing tool to RPython.

    Python
    在 GitHub 上查看↗392
  • gerhobbelt/jisonGerHobbelt 的头像

    GerHobbelt/jison

    126在 GitHub 上查看↗

    bison / YACC / LEX in JavaScript (LALR(1), SLR(1), etc. lexer/parser generator)

    Active fork of a JavaScript parser generator.

    JavaScript
    在 GitHub 上查看↗126
  • pwil3058/dunnartpwil3058 的头像

    pwil3058/dunnart

    14在 GitHub 上查看↗

    LALR(1) Parser Generator for the D Programming Language

    LALR(1) parser generator for the D language.

    D
    在 GitHub 上查看↗14
  • nikomatsakis/lalrpopnikomatsakis 的头像

    nikomatsakis/lalrpop

    2在 GitHub 上查看↗

    LR(1) parser generator for Rust

    LR(1) parser generator for Rust.

    Rust
    在 GitHub 上查看↗2
  • uplinkcoder/fancypars-liteUplinkCoder 的头像

    UplinkCoder/FancyPars-lite

    5在 GitHub 上查看↗

    FancyPars - a very fast parserGenerator

    Fast parser generator for D.

    D
    在 GitHub 上查看↗5
  1. Home
  2. Part of an Awesome List
  3. Developer Tools
  4. Parser Generators

探索子标签

  • EarleyParser generators based on the Earley algorithm, supporting all context-free grammars. **Distinct from Parser Generators:** Specializes Parser Generators [f5_mt2] by specifically implementing the Earley parsing algorithm to handle ambiguity and left recursion.