Clojure on Fennel part three: parsing
Summary
This post is the third in a series about building a Clojure-on-Fennel compiler, focusing on the parsing stage. It compares multiple Clojure parsers (Edamame, rewrite-clj, Parcera) and describes a grammar-based approach using LPeg, including AST output, error handling with lpeglabel, and trade-offs such as non-streaming parsing and C library dependencies.