Nearley is a JavaScript parser toolkit and context-free grammar compiler. It functions as an Earley parser generator that transforms BNF-like grammar definitions into executable code capable of analyzing text and generating abstract syntax trees. The project is distinguished by its ability to handle any context-free grammar, including those with left recursion and ambiguity, by maintaining multiple valid derivations for a single input. It further supports incremental parsing, allowing input strings to be processed in chunks to provide partial results and real-time feedback. Beyond core parsi
PegJS is a parsing expression grammar tool and JavaScript parser generator. It functions as a grammar compiler that transforms formal grammar specifications into executable JavaScript code for analyzing structured text and processing complex input strings. The system generates deterministic parsers that avoid the ambiguity of context-free grammars. It utilizes a packrat parsing model with memoization to ensure linear time complexity and employs recursive descent parsing to process input in a top-down hierarchical manner. The toolset supports the implementation of domain-specific languages an
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
Pest is a Rust parsing library and automatic parser generator that transforms formal grammar definitions into functional parsers. It specializes in Parsing Expression Grammar to recognize and structure complex text patterns, providing a system for context-free grammar parsing. The library implements zero-copy tokenization and static grammar compilation to reduce runtime overhead. It supports no-std runtime compatibility, allowing the parser to be compiled for embedded or bare-metal environments where a standard library is unavailable. The project covers a range of parsing capabilities, inclu
ANTLR هو مولد كود قائم على القواعد ومولد محلل لغات متعدد يستخدم لتصميم وتنفيذ لغات مخصصة. يعمل كمجموعة أدوات لتحويل تعريفات اللغة الرسمية إلى كود مصدر قابل للتنفيذ لمعالجة النصوص المهيكلة أو الملفات الثنائية، مع توفير إطار عمل للبناء التلقائي واجتياز أشجار التحليل الهرمية.
الميزات الرئيسية لـ antlr/antlr4 هي: Formal Grammar Parser Generators, Multi-Language Parser Generation, Parse Tree Frameworks, Lexical Analyzers, Adaptive Prediction Caches, Programming Language Development, Domain Specific Languages, Design Toolkits.
تشمل البدائل مفتوحة المصدر لـ antlr/antlr4: kach/nearley — Nearley is a JavaScript parser toolkit and context-free grammar compiler. It functions as an Earley parser generator… pegjs/pegjs — PegJS is a parsing expression grammar tool and JavaScript parser generator. It functions as a grammar compiler that… ohmjs/ohm — Ohm is a formal grammar parser generator and domain-specific language framework. It provides a system for defining… pest-parser/pest — Pest is a Rust parsing library and automatic parser generator that transforms formal grammar definitions into… zaach/jison — Jison is a JavaScript parser generator that implements the LALR parsing algorithm. It creates tools to analyze custom… alecthomas/participle — Participle is a Go parser generator and toolkit for building language frontends. It provides a declarative grammar…