A flexible cross-language parser generator with support for languages without explicit tokenization rules (like Gherkin)