基于 Scala 的 JVM - Metascala
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 原生接口
本文由用户 jopen 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
转载本站原创文章,请注明出处,并保留原始链接、图片水印。
本站是一个以用户分享为主的开源技术平台,欢迎各类分享!