有誰知道在哪裏可以獲得編程語言LOGO的BNF或EBNF?用於LOGO編程語言的EBNF或BNF
回答
一個BNF語法可能無法在某些情況下,太有用了......
寫LOGO這是與現有/歷史實現精確兼容並不是一件容易的事(我從事這樣的項目)。問題在於解析器沒有完成全部工作,評估者(解釋器)必須處理部分數據。考慮下面的例子:
PROC1 AB PROC2Ç
它可以(,C,A,B,PROC2())根據數目意味着PROC1(A,B,PROC2(C))或PROC1參數proc1 & proc2。
此外,我所瞭解的LOGO解釋器,例如Berkely LOGO,似乎從粗略的一瞥中不會寫出一個傳統的解析器,該解析器還可以訪問每個過程及其參數;相反,他們運行程序和程序'吃掉'他們需要的參數數量。這使解析器有點幼稚,主要角色是解釋器的角色,因此解析有點不同尋常。
那麼你是說那些明確的語言不可能有語法嗎? –
是的,我認爲沒有這樣的語法存在(無論歧義的),除非它是一個天真的語法是大多分析命令字符串原樣,只是解決了綴運營商和類似 –
權,一個天真的解析器只會解析根據語法,但它不瞭解內置函數的* arity *。看起來,在解析時,在決定如何解析後續令牌之前,需要查找函數的* arity *。如你所說,這也更有意義,「隨你解析」。 –
沒有標準的LOGO實施。
你最佳的通話大概是看一個流行的實現的來源,如UCBLogo
- 1. 用於LOGO(或Turtle)編程語言的Lex/Yacc語法文件
- 2. 用於xml架構的bnf/ebnf
- 3. 轉換BNF到EBNF
- 4. EBNF到BNF轉換
- 5. EBNF規則到BNF
- 6. BNF到EBNF轉換
- 7. C#語法在BNF或EBNF F#的分析器發生器#
- 8. 將EBNF轉換爲BNF
- 9. LOGO的現狀是什麼? (編程語言)
- 10. 虛構語言的EBNF語法
- 11. PHP腳本語言或編程語言?
- 12. 使用EBNF或BNF編寫遞歸下降解析器會更容易嗎?
- 13. 腳本或編程語言?
- 14. 用於語句順序的BNF語法
- 15. Turbo Pascal的BNF/EBNF(最好5.5或更高,因爲OOP)?
- 16. Forth語言EBNF無限循環規則或者語句
- 17. 是否有支持EBNF/BNF的文本編輯器/ IDE?
- 18. 關於java編程語言
- 19. BNF(EBNF)來描述與可選列
- 20. 將EBNF轉換爲BNF基礎知識
- 21. 如何將BNF轉換爲EBNF
- 22. 用於Infor optiva的編程語言PLM
- 23. 用於編程元語言的IDE?
- 24. BNF/EBNF /其他語法規範格式存儲庫
- 25. 關於彙編或C編程語言的意見
- 26. 用於MySQL的編程語言:Java或C++?
- 27. 用於簡單GUI的編程語言或庫?
- 28. 用於創建DLL的編程語言:C++或C#
- 29. 將NetBeans用於多種編程語言
- 30. CKY用於解析編程語言
不知道誰投票決定關閉這是題外話。 「編程語言」甚至在標題... –
看來這是它的方式到Reddit,我現在保護這個(將在幾天內不受保護)。這不是問題,只是一種預防措施。 –
@Tim Post這使得它的reddit編程subreddit,我不明白這是如何造成報警。甚至可能是吸引新用戶的好機會? – ArtB