Marpa parses any language whose grammar can be written in BNF. That includes
recursive grammars, ambiguous grammars, infinitely ambiguous grammars and
grammars with useless or empty productions.