作者yoxem (Yoxem)
看板PLT
標題[閒聊] 編譯器製作課本:編譯的要素
時間Tue Jul 18 21:17:36 2023
這是王垠的老師的徒弟寫的用 Racket 做編譯器的課本
採用CC BY-NC-ND,所以遵守自由授權可以使用,已經放在網路上,
https://github.com/IUCompilerCourse/Essentials-of-Compilation
(內有教學投影片和課文原始檔案)
https://ppt.cc/fs4rdx 個人的備份課本PDF,沒灌LaTeX產生的可以用
雖然才讀一點點,但感覺可以反映一些王垠提到的思想(因為應該是同一個
源頭):
- 編譯器要以少漸多製作
- 怎樣做一個直譯器和教材開頭的直譯器很像
- 課程似乎沒教到Parsing
- 使用Racket的Nanopass技術,將S表達式轉換成另一個次語言
- 開頭的直譯器只用讀入資料、加、減、符號、let等(沒記錯的話)來實作
算是相當精簡於重點
總之想要瞭解的可以參考看看。
不會 Racket S表達式的可以看Python版。
--
"After all, you only find out who is swimming naked when the tide goes out."
(總是,水洘了後,汝才知誰赤裼咧泅水。)
----Warren Buffett, 2001
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.96.245.216 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/PLT/M.1689686262.A.7A0.html
1F:→ glo6e: 推 12/25 22:49