Чему инструменты доступны в Python для помощи в парсинге контекстно-свободной грамматики?
Конечно, возможно прокрутить мое собственное, но я ищу универсальный инструмент, который может генерировать синтаксический анализатор для данного CFG.
Я горячо рекомендую PLY - это клон Lex/Yacc в Python, который использует средства интроспекции языка сложным образом, чтобы позволить очень естественную спецификацию грамматики. Yacc, если вы помните, является воплощением CFG в понятном DSL, который определяет, как их разбирать.
Я использовал его для реализации моего парсера для ANSI C, и взаимодействие с PLY было почти без усилий.