В соответствии с документацией Валы: "До 0,3.1 анализатор Vala был классическим гибким сканером и комбинацией парсеров Bison LALR. Но с commit eba85a, синтаксический анализатор представляет собой обработчик рекурсивного спуска вручную. Мой вопрос: почему?
Вопрос может быть адресован любому компилятору, который не использует генератор синтаксического анализатора. Каковы плюсы и минусы для такого перехода от генератора парсера к парсеру с ручным управлением? Каковы недостатки использования генераторов парсеров (Bison, ANTLR) для компиляторов?
В качестве побочного комментария: меня интересует Вала именно потому, что мне нравится идея иметь язык с современными функциями и чистый синтаксис, но компилируется в "родной" и "неуправляемый" язык высокого уровня (C в случае Валы), До сих пор я нашел только Валу. Я думаю о том, чтобы повеселиться, сделав Vala (или похожий язык) компилируемым для С++ (поддерживаемый Qt libs). Но так как я не хочу изобретать совершенно новый язык, я думаю о том, чтобы взять какую-то существующую грамматику. Очевидно, что обработчики, созданные вручную, не имеют письменной формальной грамматики, которую я могу повторно использовать. Ваши комментарии к этой идее приветствуются (идея глупо?).