News for hackers. Stuff that matters.
Re:Show HN: How to write a tiny compiler by userbinator on Thursday February 09, 2017 @11:37PM (#13613258)
I would go with a simple recursive descent parser, unless you are interested in learning a DSL, the intricacies of the parsing algorithm your particular parser generator uses, and willing to debug one --- IMHO not worth it. Even "real", production-quality compilers like GCC, Clang, MSVC, and ICC use recursive-descent; and some, like GCC, switched away from parser generators.
Re:Show HN: How to write a tiny compiler by david-given on Friday February 10, 2017 @09:36AM (#13615612)
Parser generators work really well for context-free grammars, but as soon as you start needing context-sensitive lexing (like C does) you enter World Of Pain time. And they avoid having to deal with lookahead, which is always messy in hand-written parsers.

But I think I'd agree that writing a recursive descent parser from scratch is probably the best way to learn about parsing; at least for a simple grammar.

BTW, fun fact: it turns out that BNF was invented by an Indian linguist called Pāṇini about 2500 years ago, in order to parse Sanskrit.

https://en.wikipedia.org/wiki/P%C4%81%E1%B9%87ini