Re[18]: Опциональные типы
От: fddima  
Дата: 02.03.17 15:37
Оценка:
Здравствуйте, vdimas, Вы писали:

F>>Но по голому факту: мэйнстрим фронты используют ужаснейший recursice descent.

V>Это просто декомпозиция грамматик.
Ты можешь называть их как хочешь, я бы сказал наоборот — позволяет динамически видоизменять грамматику (это скорее композиция), ведь ключи компиляции c99,c11 и т.п. напрямую влияют на этот процесс. Ну и это проще отлаживать — ведь стэк содержит всё что надо, так что можно довольно легко "осмотреться".
Понятно, что на основе GLR и других подходов можно добиться даже бОльшего и вроде как и проще, но прийдется как минимум написать толковый генератор парсера с какими-то уникальными расширениями. В итоге, имхо, — проще сопровождать 1-2Мб кода без всяких выворотов, особенно когда сам язык и его грамматика вполне это позволяют. Вдобавок и работают быстро. Для промышленных C/C++ — это вполне оправдано.
Интересно какие парсеры используются в icc и msvc.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.