我有这个语法:
agent
= nil
| @
| id
| act . agent
| agent + agent
| agent "|" agent
| agent \ restriction
| agent [relabeling]
| agent where agent_frame end
| automation
| (agent)
其中优先事项是:
"where" < "+" < "|" < "\" < "." < "[" < "nil", "@"
我需要删除关于优先级的左递归(并全部用 JavaCC 编写)。
你能帮我删除递归吗?