1
E -> E+T | T
將
E -> T E'
E' -> +T E' | null
如果我有生產
B -> B == C | C
將這些是正確的作品?
B -> C B'
B' -> ==C B' | null
,我遇到的麻煩另一家運營商是「!」,我知道它是高於一切的優先級在我的語法,除了「()」 我想出了這個,但我不知道這是否是正確。
T -> U T'
T' -> *U T' | /U T' | null
U -> ! ident | F
F -> (A) | idlit | ftncall
ftncall -> ident(params)
野牛不會警告左遞歸 - 事實上,對於野牛,你想使用左遞歸自然出現的地方。 – ibid 2013-04-08 07:51:10
@ibid,我很抱歉,我被曖昧左遞歸語法混淆。 – 2013-04-09 04:20:32