本文系 Creating JVM language 的翻譯, 原文作者 Jakub 花費 20 周的時間,從零開始,實現一門執行在 JVM 上的語言。我也準備花費 20 周的時間對原文做一次比較完備的翻譯。
正如我之前部落格中提到的,我正在參加一個 “讓自己知道” 的比賽。這個比賽的目的是做一個專案,並且用部落格記錄專案的開發過程。於是我想到了開發一個自己的基於 JVM
的語言和編譯器(我沒有理由不這麼做)。
這個語言的名字我稱之為 Enkel
, 在瑞士語中表示簡單的意思。
之所以讓 Enkel
執行在 JVM
主要有以下幾方面的考慮:
JVM
規範文件整理的很好JVM
語言可以混合呼叫(因此Enkel
可以呼叫 Java 庫)- 我熟悉 Java 這門語言(詞法分析器,語法分析器以及編譯器均準備用 Java 編寫)
- Java 有一些很便捷的操作位元組碼的庫(譯者注:asm)
- 本人覺得 Java 語言有一些可以優化的點
在接下來的十週,我將詳細的描述 Enkel
的整個實現過程,坐穩,發車~