Parsing Text with Nom

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • parser

    String parser combinators (by preludejs)

  • Parser combinators are great, we're using parser combinators in production, they are great ie. for typescript [0].

    [0] https://github.com/preludejs/parser

  • pidgin

    build non-recursive grammars (by dfhoughton)

  • I wrote a crate to facilitate this:*

    https://github.com/dfhoughton/pidgin

    As it says there, you can only build non-recursive grammars this way.

    And the reason I wrote that crate:

    https://github.com/dfhoughton/two-timer

    And the reason I wrote that crate:

    https://github.com/dfhoughton/jobrog

    And having written these crates, I went back to writing Ruby for my day job. I am not a very experienced rustacean, and what skill I developed writing these things has faded, but I use the last one daily, so the regex-based parser is still working pretty well.

    * It's a "parser combinator library" inasmuch as it allows you to write reusable parsing rules that can be components of other rules.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • two-timer

    Rust library for parsing English time expressions into start and end timestamps

  • I wrote a crate to facilitate this:*

    https://github.com/dfhoughton/pidgin

    As it says there, you can only build non-recursive grammars this way.

    And the reason I wrote that crate:

    https://github.com/dfhoughton/two-timer

    And the reason I wrote that crate:

    https://github.com/dfhoughton/jobrog

    And having written these crates, I went back to writing Ruby for my day job. I am not a very experienced rustacean, and what skill I developed writing these things has faded, but I use the last one daily, so the regex-based parser is still working pretty well.

    * It's a "parser combinator library" inasmuch as it allows you to write reusable parsing rules that can be components of other rules.

  • jobrog

    A rewrite of JobLog in Rust

  • I wrote a crate to facilitate this:*

    https://github.com/dfhoughton/pidgin

    As it says there, you can only build non-recursive grammars this way.

    And the reason I wrote that crate:

    https://github.com/dfhoughton/two-timer

    And the reason I wrote that crate:

    https://github.com/dfhoughton/jobrog

    And having written these crates, I went back to writing Ruby for my day job. I am not a very experienced rustacean, and what skill I developed writing these things has faded, but I use the last one daily, so the regex-based parser is still working pretty well.

    * It's a "parser combinator library" inasmuch as it allows you to write reusable parsing rules that can be components of other rules.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts