Chumsky es una librería de combinadores de parser utilizada para construir parsers de alto rendimiento componiendo pequeñas funciones de parsing en gramáticas complejas. Proporciona múltiples motores de parsing, incluyendo implementaciones de descenso recursivo y escalada de precedencia para resolver el orden de operaciones en expresiones matemáticas y lógicas.
Las características principales de zesterer/chumsky son: Parser Combinators, Recursive Descent Parsers, Zero-Copy Parsing, Environment Support Managers, No-Std Environment Adapters, Expression Order Resolution, Parsing Error Recovery, Data Formats and Parsing.
Las alternativas de código abierto para zesterer/chumsky incluyen: rust-bakery/nom — nom is a parser combinator framework for Rust used to build complex parsers by combining small, reusable parsing… harc/ohm — Ohm is a compiler construction toolkit and parser combinator library used to build parsers, interpreters, and… dullabs/bhai-lang — Bhai-lang is a TypeScript-based toy programming language and custom syntax interpreter. It functions as an educational… alecthomas/participle — Participle is a Go parser generator and toolkit for building language frontends. It provides a declarative grammar… pegjs/pegjs — PegJS is a parsing expression grammar tool and JavaScript parser generator. It functions as a grammar compiler that… pest-parser/pest — Pest is a Rust parsing library and automatic parser generator that transforms formal grammar definitions into…
nom is a parser combinator framework for Rust used to build complex parsers by combining small, reusable parsing functions. It functions as a zero-copy parsing tool that minimizes memory overhead by returning slices of the original input instead of allocating new memory. The framework is designed for diverse data formats, serving as a binary data parser with configurable endianness and a bitstream processing library capable of extracting values of arbitrary bit length. It also functions as a streaming data parser that can process data arriving in chunks and signal when additional input is req
Ohm is a compiler construction toolkit and parser combinator library used to build parsers, interpreters, and compilers. It provides a formal grammar language for specifying the structural rules of data formats to ensure precise parsing of input strings. The project functions as a parsing debugging tool and program execution visualizer. It generates text traces and graphical visualizations to show the step-by-step logic used during parsing and renders runtime state changes and method call hierarchies. The toolkit covers custom parser development and the construction of compilers and interpre
Bhai-lang is a TypeScript-based toy programming language and custom syntax interpreter. It functions as an educational language implementation designed to demonstrate core concepts of variable management, conditional logic, and execution flow. The project provides a custom command line interface and an interactive code playground for writing and testing scripts. It serves as a framework for programming language prototyping, allowing for the definition of custom syntax and execution logic. The system covers the full interpreter pipeline, including lexical analysis, recursive descent parsing,
Participle is a Go parser generator and toolkit for building language frontends. It provides a declarative grammar framework that uses reflection and struct tags to map input patterns directly into typed data structures. The library features a stateful lexical analyzer that employs state machines to handle nested or modal patterns. It includes a lexer code generator to produce optimized code, reducing runtime memory allocations and increasing throughput. The project covers recursive descent parsing with support for union types via sealed interfaces and custom parsing logic through interface-