BNFC is the BNF Converter compiler construction tool which takes an annotated BNF (Backus-Naur Form) grammar and creates a parser from it.