An on-the-fly parser for BNF grammars