基于 Scala 的 JVM - Metascala

jopen 9年前發布 | 50K 次閱讀 Metascala Scala開發

Metascala 是使用 Scala 編寫的極小 metacircular Java Virtual Machine (JVM)。Metascala 大約有 300 行的 Scala 代碼,但是是完整的 JVM,可以解析自己。使用 Scala 編寫,編譯為 Java 字節碼,Metascala JVM 要求一個主機 JVM 才可以運行。

Metascala 的目的是創建一個 JVM 平臺,使用 3000 行 Scala 代碼編寫,比 1,000,000 行的 C/C++ 代碼更便捷更容易完成。Metascala 可以構成一個標準的實現 HotSpot,更容易實現一些有趣的特性,比如 continuations, isolates 或者 value classes。3000 行的代碼可以讓你:

  • 字節碼解析器,包括所有運行時數據結構

  • 一個 stack-machine,作為 SSA 注冊機制字節碼轉換器

  • 一個自定義的 heap

  • 實現部分的 JVM 原生接口

項目主頁:http://www.baiduhome.net/lib/view/home/1432601974316

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!