I would like to self-nominate marser.
It is a parser-combinator library with a focus on readability, good error messages and good debuggability.
The main aim of the library is to make parsers readable and understandable by enabling users to write code that resembles formal grammars / ebnf.
In this blog post which was included in twir#654 (thanks a lot
), I outline what I think differentiates marser from existing parser-combinator libraries: A grammar-first approach to parser-combinators