I just 'released' the latest code for the Marpa parser generator toGitHub. Similar to a combination of lex and yacc.
It contains a description of a parser in a BNF, which can betransformed into a program that parses such a description. It's allvery meta. Take a look at a description to get an idea of what it is.
Each line can also contains a 'rule' description and a piece of Perlcode. It looks like a BNF, but it's actually more like a configurationlanguage for Marpa::XS, a lexer and a code generator.
This is very much a work in progress. I welcome feedback.