[英]Where can I learn the basics of writing a lexer?
我想學習如何編寫詞法分析器。 我的大學課程有一項任務,我們必須編寫一個解析器(以及 go 的詞法分析器),但這是給我們的,沒有任何指導或反饋(超出了分數),所以我並沒有真正從中學到很多東西。
在搜索了這個主題之后,我只能找到相當高級的文章,這些文章專注於我認為比我所處的位置領先幾步的領域。 我想討論為一種非常簡單的語言編寫詞法分析器的基礎知識,我可以將其用作研究對更復雜語言進行標記的基礎。
在這個階段,我對最佳實踐或優化技術並不真正感興趣,而是更喜歡關注基本要素。 有哪些好的資源可以幫助我入門?
基本上,編寫詞法分析器有兩種主要方法:
另外我想推薦LLVM文檔中的Kaleidoscope 教程。 它貫穿了一種簡單語言的實現,並特別演示了如何編寫一個小型詞法分析器。 有一個 C++ 和一個 Objective Caml 版本的教程。
該主題的經典教科書是 編譯器:原理、技術和工具,也稱為龍書。 然而,這可能屬於“相當高級的寫作”的范疇。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.