任何語法都可以通過運算符優先級解析來實現嗎?我可以將任何語法轉換爲運算符優先級語法嗎?
0
A
回答
2
如果您問是否可以通過語法更改語言的運算符優先級,那麼答案是:是的,當然。
如果您問是否可以使用Pratt的自頂向下運算符解析方法來解析「典型」上下文無關文法,那麼答案是否定的。 但是你可以混合兩者。一篇關於Pratt解析的好文章,應該給你一些關於將它應用到遞歸下降解析器的信息:http://effbot.org/zone/simple-top-down-parsing.htm
1
這是一個很好的問題,答案是:是的。它看起來像 在第四章Hopfroft & Ullman 關於可計算性和形式語言的文本中出現了一個雙星問題(#4.21)。還提供了答案(建築總結證明 )。 簡而言之,它假定預轉換爲簡化GNF,從中執行最終的 構造以移除相鄰的非終端。不是最有效的建築,但它有效(如果你可以按照類似的處理 轉換到CNF和GNF較早)。 希望這有助於!
相關問題
- 1. if語句和運算符優先級的語法
- 2. LR(1)語法和運算符優先級語法有什麼區別?
- 3. YACC語法:運算符優先級問題
- 4. 運算符優先算法
- 5. 在ORACLE算法中,+或者具有運算符優先級嗎?
- 6. 任何人都可以幫助我將這個ANTLR 2.0語法文件轉換爲ANTLR 3.0語法嗎?
- 7. 的Python語法分析器括號根據運算優先級
- 8. 是否可以將clojure語法轉換爲python語法?
- 9. 如何給SAPI語法優先級?
- 10. 將優先錶轉換爲適合遞歸下降的語法?
- 11. 是否可以將低級語言轉換爲高級語言?
- 12. Prolog運算符優先級
- 13. C++運算符優先級
- 14. JavaScript運算符優先級
- 15. php運算符優先級
- 16. PHP:運算符優先級
- 17. Python運算符優先級
- 18. 運算符優先級
- 19. RethinkDB運算符優先級
- 20. C運算符優先級
- 21. 運算符優先級
- 22. 將語法轉換爲LL1語法
- 23. 將三元運算符轉換爲if/else語句嗎?
- 24. 更改運算符優先級爲∘
- 25. TextMate語法 - 規則的優先級
- 26. 檸檬語法問題(優先級?)
- 27. C編程語言中的運算符優先級
- 28. 運算符*在AT&T彙編語言中的優先級
- 29. 這個if語句的運算符優先級是什麼?
- 30. 任何人都可以解釋這個JavaScript語法(語法)嗎?
..........什麼? – 2010-11-12 14:26:12
這聽起來像作業,因爲如果你真的對此感興趣,你會知道答案。 – 2010-11-12 14:28:53
你問你是否可以更改運算符優先級?我越讀「你的問題」越多,我的內部語法分析器就像一個不想要的繼子女一樣被毆打。 – 2010-11-12 14:29:27