Какие преимущества у парсеров LL есть над парсерами LR, чтобы гарантировать их относительную популярность в средствах анализатора сегодняшнего дня?
Согласно Wikipedia, анализ LR имеет преимущества перед LL:
Разбор LR может обрабатывать более широкий диапазон языков, чем синтаксический анализ LL, а также лучше сообщать об ошибках, т.е. обнаруживает синтаксические ошибки, когда входные данные не соответствуют грамматике как можно скорее. Это контрастирует с LL (k) (или, что еще хуже, парсером LL (*)), который может отложить обнаружение ошибок в другую ветвь грамматики из-за обратного отслеживания, часто делая ошибки сложнее локализовать через дизъюнкции с длинными общими префиксами.
Примечание. Это не домашнее задание. Я был просто удивлен, когда узнал, что Antlr - генератор парсеров LL (несмотря на то, что у него есть "LR"!).