Короче, как я это понимаю 'грубо' есть ряд проблем которые делают грамматику неоднозначной, эти неоднозначности вызывают проблемы редукции, просто взять и сделать грамматику детерминированной не выйдет, потому что даже такие базовые штуки как if else приоритет операторов ну и т.д. вызывают появление ambigues. Тоесть ну конечно в теории можно изобрести такую подграмматику, но практического толку от этого никакого потому что это будет подобием калькулятора который даже в скобочки не смог, поэтому и требуется велосипед ввиде правил резолва что описанны в ссылке выше. Тоесть я не к тому что совет плохой, я скорей к тому что путь тупиковый. В моем случае есть 2 варианта - плюнуть взять готовый парсер ну или написать патч в lalrpop. Есть еше вариант с экшенами который вроде сами ахо и ко описывают в пейпере