Генераторы парсеров¶
В самом общем случае, парсер — программа, производящая синтаксический разбор текста по некоторой формальной грамматике. В настоящее время, в основном парсеры используются:
- компиляторами и интерпретаторами для получения синтаксического дерева программ;
- серверами для извлечения информации о запросе от клиента;
- встроенными устройствами для общения по бинарным протоколам;
- ...
Поскольку это задача классическая и хорошо изученная, существуют также и всевозможные классические алгоритмы по написанию парсеров для своих языков. Более того, задача это максимально техническая; для её автоматического решения и были созданы так называемые генераторы парсеров, по поданной на вход грамматике генерирующие парсер (либо выдающие сообщение об ошибке, что сгенерировать парсер для данной грамматики невозможно).
В данном проекте Вы узнаете, какие могут быть сложности при парсинге грамматик, какие бывают классы грамматик (и классы сложности грамматик!), а также напишете свой генератор парсеров.