How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.
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 main features of harc/ohm are: Parsing and Grammars, Compiler and Interpreter Construction, Compiler Construction, Execution Tracing, Parsing Debugging Toolkits, Formal Grammar Languages, Formal Grammar Specifications, Runtime State Visualizers.
Projects with overlapping indexed features include: ohmjs/ohm — Ohm is a formal grammar parser generator and domain-specific language framework. It provides a system for defining… lark-parser/lark — Lark is a Python parsing toolkit used to define grammars and convert raw text into annotated parse trees. It serves as… zesterer/chumsky — Chumsky is a parser combinator library used to build high-performance parsers by composing small parsing functions… geal/nom — nom is a Rust parser combinator framework used to build complex parsers for binary and text data. It functions as an… meta-pytorch/segment-anything-fast — Segment Anything Fast is a high-performance computer vision inference engine and image segmentation framework built… day8/re-frame — re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized,…
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
Lark is a Python parsing toolkit used to define grammars and convert raw text into annotated parse trees. It serves as an abstract syntax tree generator and a grammar definition language for specifying language rules through terminals and regular expressions. The library provides two primary parsing implementations: an Earley parsing library capable of handling all context-free languages, including those with ambiguity and left-recursion, and a high-performance LALR parsing library designed for deterministic languages with low memory overhead. Beyond core parsing, the toolkit includes capabi
Chumsky is a parser combinator library used to build high-performance parsers by composing small parsing functions into complex grammars. It provides multiple parsing engines, including recursive descent and precedence-climbing implementations for resolving the order of operations in mathematical and logical expressions. The library is distinguished by its zero-copy text parsing, which minimizes memory allocations to increase throughput, and its ability to run without a standard library for use in embedded or resource-constrained environments. It also features an error-recovering parser that
nom is a Rust parser combinator framework used to build complex parsers for binary and text data. It functions as an abstract syntax tree generator and a bit-level binary parser, allowing users to construct structured data by combining small, reusable parsing functions. The framework provides specialized support for zero-copy binary parsing, extracting data as slices from raw byte arrays to avoid memory allocations. It also includes a streaming data parser capable of processing partial input chunks from networks or files and signaling when additional input is required. The project covers a b