假设我有以下用于简单计算器语言的上下文无关语法:
S->TS' S'->OP1 TE'|e T->FT' T'->OP2 FT'|e F->id|(S) OP1->+|- OP2->*|/
可以看到,* 和 / 的优先级高于 + 和 -。但是,如何添加另一级优先级?例如指数、^、(例如:3^2=9)或其他什么?请解释一下您的程序以及如何到达那里的原因,以便我可以为其他操作员做这件事。
grammar operator-precedence context-free-grammar
context-free-grammar ×1
grammar ×1
operator-precedence ×1