Hi @sabine,
I love it! A while ago I demoed side by side an xml (subset) parser directly based on the w3c spec #ABNF in reverse: https://wiki.mro.name/cocoaheads/ragel#:~:text=XML%20Spec
Used #ragel https://en.wikipedia.org/wiki/Ragel
I keep wondering, why there is no converter from ABNF to #angstrom https://opam.ocaml.org/packages/angstrom/ #combinators

(Edit: wiki url anchor)

Parser mit Ragel [🐳]

"I claimed in the end of the video that this was the first example of animated beta-reductions of visual lambda expressions. Paul Brauner has some videos here: • Lambda Diagrams [1] , although they do not explicitly animate the mechanics of one step of beta-reduction! I probably should have chosen my words more carefully."
https://www.youtube.com/watch?v=RcVA8Nj6HEo
[1]https://www.youtube.com/playlist?list=PLi8_XqluS5xc7GL-bgVrxpA2Uww6nK0gV
#lambdacalculus #combinators #animation #representation #church #tromp #turing
What is PLUS times PLUS?

YouTube
Oh joy, yet another #C++17 #parser combinator library! 🎉 Because what the world really needed was more creative ways to torture ourselves with syntactic nightmares and verbose error messages. 🚀 GitHub's endless quest to make #programming as enjoyable as a root canal continues unabated. 🙄
https://github.com/foonathan/lexy #combinators #humor #GitHub #developer #woes #HackerNews #ngated
GitHub - foonathan/lexy: C++ parsing DSL

C++ parsing DSL. Contribute to foonathan/lexy development by creating an account on GitHub.

GitHub
Stop writing CLI validation. Parse it right the first time.

This post introduces Optique, a new library created to address the pervasive problem of repetitive and often messy validation code in CLI tools. The author was motivated by the observation that nearly every CLI tool reinvents the wheel with similar validation patterns for dependent options, mutually exclusive options, and environment-specific requirements. Optique leverages parser combinators and TypeScript's type inference to ensure that CLI arguments are parsed directly into valid configurations, eliminating the need for manual validation. By describing the desired CLI configuration with Optique, TypeScript automatically infers the types and constraints, catching potential bugs at compile time. The author shares their experience of deleting large chunks of validation code and simplifying refactoring tasks. Optique aims to provide a more robust and maintainable approach to CLI argument parsing, potentially saving developers from writing the same validation logic repeatedly.

Hackers' Pub

Optique 0.4.0: Better help, rich docs, and Temporal support

https://hackers.pub/@hongminhee/2025/optique-040

Optique 0.4.0: Better help, rich docs, and Temporal support

Optique 0.4.0 introduces enhancements to streamline CLI development in TypeScript. This release focuses on improving help text organization through labeled merge groups and a new `group()` combinator, making complex CLIs more user-friendly by organizing options under clear sections. Comprehensive documentation support is added via the `run()` function, allowing brief descriptions, detailed explanations, and footers without altering parser definitions. The update also includes Temporal API support with the `@optique/temporal` package, enabling type-safe parsing for dates, times, and time zones. Improved type inference for `merge()` and `tuple()` combinators enhances type safety, alongside minor breaking changes. These updates aim to make CLI construction more intuitive and maintainable, offering developers greater control over user experience and code structure.

Hackers' Pub
lambda is not a four letter word - Embedding MicroHs

GitHub - fosskers/parcom: Simple parser combinators for Common Lisp.

Simple parser combinators for Common Lisp. Contribute to fosskers/parcom development by creating an account on GitHub.

GitHub

In about an hour, Adám from Dyalog is appearing on today's Tacit Talk, a podcast about programming languages, combinators, algorithms, and more. Watch live at 14:00 UTC at https://www.youtube.com/watch?v=6LrQithKj8w

#Dyalog #APL #Programming #Combinators #Algorithms #FunctionalProgramming #Podcast #LiveStream #TechTalk #Coding #TechPodcast

Tacit Talk Episode 4: Dyalog APL with Adám Brudzewsky

YouTube

Context free grammars (CFG) are better than parsing expression grammars (PEG), because CFGs represent how we think.

Parser combinators are similar to PEGs, so they are worse than CFGs, too.

So, don't use Rust libraries nom, combine. Use lalrpop.

Don't use Haskell libraries parsec, gigaparsec, attoparsec, megaparsec, trifecta. Use Earley, happy.

See more detailed story in my new article https://safinaskar.writeas.com/this-is-why-you-should-never-use-parser-combinators-and-peg .

The story also includes some cases, where PEG and parser combinators may still be useful. Also, the article gives links to my Haskell parsing libraries.

#haskell #rust #parsing #parse #cfg #peg #combinators #parsercombinators #parsingcombinators #nom #combine #lalrpop #parsec #earley #happy

This is why you should never use parser combinators and PEG

Let me tell you why you should (nearly) never use PEG (parsing expression grammars). Nearly everything I will say applies to parser combi...

Askar Safin

Given my difficulties to wrap my head around the Y combinator, I expected it to come with a higher run time penalty. 🙂

#julialang #YCombinator #combinators