Ditch regex for parser combinators, a Rust / nom step-by-step guide

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/programming

Our great sponsors
  • SonarQube - Static code analysis for 29 languages.
  • Scout APM - Less time debugging, more time building
  • SaaSHub - Software Alternatives and Reviews
  • masala-parser

    Javascript Generalized Parser Combinators

    - https://pypi.org/project/parsita/#description - https://github.com/masala/masala-parser

  • lexy

    C++ parsing DSL

    It's not a parser generator, it's also a parser combinator, but I've recently written one for C++: https://github.com/foonathan/lexy

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • lalrpop

    LR(1) parser generator for Rust

    Do you mean for C++ in particular, or just for any language? Because LALRPOP is very good if you're not specifically looking for C++.

  • attoparsec

    A fast Haskell library for parsing ByteStrings

    - https://hackage.haskell.org/package/attoparsec - https://hackage.haskell.org/package/megaparsec

  • PEGTL

    Parsing Expression Grammar Template Library

    I've found https://github.com/taocpp/PEGTL to be easier to use than boost parser generators.

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