0
我已經爲布爾和算術表達式做了一個語法。我想處理像算術表達式:LALR語法模糊
(1+5)+(-3)
我與所做的工作:我可以處理所有我想要的表情。
我的問題是一個布爾表達式可以是這樣的:那麼在某些時候我的布爾規則不得不提到我的算術表達式規則
(((2+2==4) or (3>2)) and 2==2)
。我不能在我的布爾規則中使用括號(),因爲它會導致我的語法不明確。我明白爲什麼,但我無法弄清楚這個問題的解決方案。
到目前爲止您嘗試過什麼?顯示您的代碼並提供yacc標識的衝突的詳細信息。 – 2013-03-25 14:33:06
在布爾表達式和算術表達式中都沒有任何含括號的含糊不清的含義(簡單的做法會使語法不是LL,但對於LR來說很好)。你有什麼嘗試? – 2014-06-17 04:45:16
[簡單模糊語法與減少 - 減少衝突]的可能重複(http://stackoverflow.com/questions/12887072/simple-ambiguous-grammer-with-reduce-reduce-conflict) – 2014-06-17 06:01:48