awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
harc avatar

harc/ohm

0
View on GitHub↗
5,530 Stars·225 Forks·JavaScript·MIT·5 Aufrufe

Ohm

Ohm ist ein Toolkit für den Compilerbau und eine Parser-Kombinator-Bibliothek zum Erstellen von Parsern, Interpretern und Compilern. Es bietet eine formale Grammatiksprache zur Spezifikation der strukturellen Regeln von Datenformaten, um ein präzises Parsen von Eingabe-Strings zu gewährleisten.

Das Projekt fungiert als Debugging-Tool für das Parsen und als Visualisierungstool für die Programmausführung. Es generiert Text-Traces und grafische Visualisierungen, um die schrittweise Logik während des Parsens aufzuzeigen, und rendert Laufzeitzustandsänderungen sowie Hierarchien von Methodenaufrufen.

Das Toolkit deckt die Entwicklung benutzerdefinierter Parser sowie die Konstruktion von Compilern und Interpretern ab. Es umfasst Funktionen für die Visualisierung von Programmiersprachen, das Debugging von Algorithmus-Ausführungen und die Definition formaler Grammatiken.

Features

  • Parsing and Grammars - Provides a grammar-based parsing engine that matches input strings against formal rules to derive structured text representations.
  • Compiler and Interpreter Construction - Serves as a comprehensive toolkit for building custom compilers and interpreters.
  • Compiler Construction - Provides a specialized toolkit for constructing compilers, interpreters, and static analysis tools.
  • Execution Tracing - Records every state change and method call during runtime to create a chronological history of the computation.
  • Parsing Debugging Toolkits - Generates text traces or graphical visualizations to show the step-by-step logic used when matching input.
  • Formal Grammar Languages - Implements a formal grammar language for specifying precise structural rules of data formats.
  • Formal Grammar Specifications - Allows users to specify the structure of a language or data format using a dedicated syntax to ensure precise parsing.
  • Runtime State Visualizers - Displays real-time values and state changes next to the corresponding lines of code to simplify the tracking of program state.
  • Call-Stack Visualizers - Render a global icicle plot of all method calls to visualize the structural shape and sequence of a computation.
  • Parser Combinators - Implements a parser combinator library for building complex parsers by composing smaller, reusable parsing functions.
  • Parsing Visualizers - Generates step-by-step traces and graphical visualizations to show the logic used when matching input against a grammar.
  • String Parsing - Matches text inputs against a defined grammar to determine if the data conforms to the expected format.
  • Custom Parser Development - Enables the definition of formal grammars to create structured representations of text input.
  • Execution Tracing - Records every state change and method call during runtime to create a searchable history of the computation.
  • Iteration Visualizers - Displays repeated loop executions side-by-side to track how variable values evolve across multiple iterations.
  • Runtime-to-Source Synchronizers - Links specific runtime execution timestamps to the corresponding line numbers in the original source code.
  • Variable State Summarizers - Filters out transient local state to display only the final modified values of persistent variables after execution.
  • Execution-to-Code Linking - Synchronize highlighting between source code and execution visualizations to navigate quickly between call sites and runtime behavior.
  • Algorithm Execution Debugging - Provides visual plots of method calls and state changes to diagnose complex algorithmic logic errors.
  • Call-Stack Visualizations - Visualizes the structural depth of function calls by mapping the execution hierarchy as a series of nested rectangles.
  • Programming Language Visualizations - Renders execution flows and state changes through graphical plots to visualize program behavior at runtime.
  • Call Stack Visualizers - Renders the hierarchy of function calls as nested rectangles to visualize structural execution depth.
  • Program Execution Visualization - Renders runtime state changes and method call hierarchies to visualize complex code execution paths.
  • Language Tooling - Library for building parsers and compilers.

Star-Verlauf

Star-Verlauf für harc/ohmStar-Verlauf für harc/ohm

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Häufig gestellte Fragen

Was macht harc/ohm?

Ohm ist ein Toolkit für den Compilerbau und eine Parser-Kombinator-Bibliothek zum Erstellen von Parsern, Interpretern und Compilern. Es bietet eine formale Grammatiksprache zur Spezifikation der strukturellen Regeln von Datenformaten, um ein präzises Parsen von Eingabe-Strings zu gewährleisten.

Was sind die Hauptfunktionen von harc/ohm?

Die Hauptfunktionen von harc/ohm sind: Parsing and Grammars, Compiler and Interpreter Construction, Compiler Construction, Execution Tracing, Parsing Debugging Toolkits, Formal Grammar Languages, Formal Grammar Specifications, Runtime State Visualizers.

Welche Open-Source-Alternativen gibt es zu harc/ohm?

Open-Source-Alternativen zu harc/ohm sind unter anderem: 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,…

Open-Source-Alternativen zu Ohm

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Ohm.
  • ohmjs/ohmAvatar von ohmjs

    ohmjs/ohm

    5,471Auf GitHub ansehen↗

    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

    JavaScriptcompilergrammarsjavascript
    Auf GitHub ansehen↗5,471
  • lark-parser/larkAvatar von lark-parser

    lark-parser/lark

    5,914Auf GitHub ansehen↗

    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

    Pythoncykearleygrammar
    Auf GitHub ansehen↗5,914
  • zesterer/chumskyAvatar von zesterer

    zesterer/chumsky

    4,545Auf GitHub ansehen↗

    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

    Rustcontext-free-grammarerrorslexing
    Auf GitHub ansehen↗4,545
  • geal/nomAvatar von Geal

    Geal/nom

    10,422Auf GitHub ansehen↗

    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

    Rust
    Auf GitHub ansehen↗10,422
  • Alle 30 Alternativen zu Ohm anzeigen→