Скажем, у меня есть язык постфиксную какLookahead с языком постфикса
3 2 result + // equivalent to result = 3 + 2
result 1 result + // equivalent to ++result
как я должен реализовать предпросмотр для рекурсивного спуска парсер (я делаю это в C++)?
Я не уверен в том, как разработать такой алгоритм синтаксического анализа, так как я не могу вывести тип команды только из первых маркеров
Если вы хотите разобрать этот язык или просто оценить его семантику, то, вероятно, лучше всего узнать о [языковых языках, ориентированных на стек] (https://en.wikipedia.org/wiki/Stack-oriented_programming_language). Проще говоря, вы прокручиваете чтение токена, решая, сколько элементов выходить из стека (ноль или больше), «выполнять» значение токена и вставлять элементы в стек (ноль или более). И синтаксический анализатор, и интерпретатор могут быть построены путем назначения соответствующего значения токенам. –