Утверждение о том, что всегда предпочитаете левую рекурсию, исходит из обсуждения восходящих парсеров Утверждение о левой рекурсии, ведущей к бесконечным циклам, исходит из обсуждения нисходящих (прогнозирующих) синтаксических анализаторов.
Оба утверждения верны, потому что между двумя алгоритмами разбора есть разница.
Восходящий синтаксический анализатор может обрабатывать рекурсию влево или вправо, но левая рекурсия немного более эффективна, поскольку не требует стекового пространства. С другой стороны, синтаксические анализаторы могут обрабатывать только правильную рекурсию.
Любая грамматика, которая может быть проанализирована с помощью анализатора сверху вниз, может быть проанализирована снизу вверх, но обратное неверно: многие грамматики могут быть проанализированы только снизу вверх. (Если вы не разрешите неограниченный просмотр вперед или, что эквивалентно, возвращение назад, в этом случае вы больше не сможете гарантировать анализ в линейном времени.)