A dynamic parser generated for BNF-like grammars written in Objective-C