Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Writing the parser was the easiest part of Toy, and actually the first thing I did.
Agree, I used flex/yacc to add an arithmetic expression evaluator to fio a few years back to allow simple math with some units in fio's job files, and for stuff like that, they're fine, but I wouldn't want to use them for a real language, the error handling is kind of a nightmare.
Sort-of the Rust turbofish ::<> but that is exactly one of the "so we picked one and stuck with it" things too.
The Parsec library for Haskell uses combinators, and there are a few good resources around the internet which explore it, if you know Haskell.