Я понял, как скомпилировать хвостовую рекурсию, простую рекурсию и перекрестную рекурсию, но не могу понять, как скомпилировать l-рекурсию.
Предположим, у нас есть следующее уравнение:
Код: Выделить всё
const nums = lazy(() => alt(seq(nums, nums)), just("num"))
Я ожидаю, что ввод «1 2 3 4 5» будет разобран в [[[[1, 2], 3], 4], 5].
Подробнее здесь: https://stackoverflow.com/questions/798 ... -iteration
Мобильная версия