Есть ли там общеизвестный способ, как реализовать в Coco / R отступы, как в Python / Boo?
Coco / R игнорирует пробелы, но мне нужно каким-то образом генерировать токены beginBlock / endBlock, основываясь на отступе следующей строки.
Прямо сейчас я использую препроцессор, который вставляет '{', '}' и ';' во входном потоке, сравнивая отступы между строками. В грамматике Coco / R я использую изогнутые скобки в качестве токенов beginBlock / endBlock. Это хорошо работает, если входной поток не имеет комментариев (которые также могут быть вложенными). Как только поступают неупорядоченные комментарии, логика сравнения намерений не работает.
Реализация препроцессора, который отслеживает комментарии, выглядит для меня слишком большой.
Итак, вопрос в том, возможно ли вообще разобрать грамматику, основанную на отступе, с Coco / R?
Или я должен попробовать что-то еще?