- Extended Backus–Naur Form https://en.wikipedia.org/wiki/Extended_Backus–Naur_form
- Structure and Interpretation of Computer Programs https://mitpress.mit.edu/sites/default/files/sicp/index.html
- Crafting Interpreters. A handbook for making programming languages http://craftinginterpreters.com/
- Compiling to Assembly from Scratch https://keleshev.com/compiling-to-assembly-from-scratch/
- Compilers: Principles, Techniques, and Tools, 2nd Edition https://www.pearson.com/us/higher-education/program/Aho-Compilers-Principles-Techniques-and-Tools-2nd-Edition/PGM167067.html
- CS143 Compilers Course @ Stanford https://web.stanford.edu/class/cs143/
- The Super Tiny Compiler — compile some lisp-like function calls into some C-like function calls https://github.com/jamiebuilds/the-super-tiny-compiler/
- Write Yourself a Scheme in 48 Hours by Jonathan Tang https://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours
- Write You A Scheme, Version 2 by Adam Wespiser https://www.wespiser.com/writings/wyas/home.html
- Megaparsec tutorial by Mark Karpov https://markkarpov.com/tutorial/megaparsec.html#parsect-and-parsec-monads
- Haskell: Parsec — Monadic parser combinators https://hackage.haskell.org/package/parsec
- Haskell: Megaparsec — Monadic parser combinators (an actively developerd fork of parsec) https://hackage.haskell.org/package/megaparsec
- Haskell: Attoparsec — Fast combinator parsing for bytestrings and text hackage.haskell.org/package/attoparsec
- Parsing Protobuf Definitions with Tree-sitter https://relistan.com/parsing-protobuf-files-with-treesitter