Metascala基于 Scala 的 JVM

联合创作 · 2023-10-01 08:02

Metascala 是使用 Scala 编写的极小 metacircular Java Virtual Machine (JVM)。Metascala 大约有 3000 行的 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 原生接口

浏览 5
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报