vmboiler:一个基于 ASM 的小型库,可为基于 JVM 的动态类型语言生成乐观类型的字节码

时间:2024-06-28 02:02:21
【文件属性】:

文件名称:vmboiler:一个基于 ASM 的小型库,可为基于 JVM 的动态类型语言生成乐观类型的字节码

文件大小:2.07MB

文件格式:ZIP

更新时间:2024-06-28 02:02:21

Java

虚拟机 ASM 之上的一个小库,它生成乐观类型的字节码,旨在简化在 JVM 之上的快速动态类型语言运行时的实现。 常问问题 这个怎么运作 ? 锅炉仅提供 8 个操作,并要求运行时开发人员将语言语义映射到这些操作。 只有 8 个操作,因为所有方法调用、字段访问、转换等都是使用一种称为调用的操作完成的,该操作利用调用动态来指定确切的语义。 然后锅炉要求运行时开发人员提供类型注释作为 8 个操作的提示。 这些类型注释可以是乐观的,表明类型可以是原始类型或对象类型(我们称之为混合类型)。 在运行时,如果一个值不再适合其原始类型,锅炉会插入代码来处理它并调用两个特殊方法,指示一个参数或返回值是否被调用为 . 例如,调用这些方法允许运行时捕获更改的值并更改相应的类型配置文件,然后使代码无效并使用更新的配置文件重新生成一个新的。 为什么它不是非常慢? 这个想法是生成比 Java 中的等效代码更多的代


【文件预览】:
vmboiler-master
----.gitignore(203B)
----src()
--------com()
----.classpath(979B)
----LICENSE(11KB)
----.settings()
--------org.eclipse.jdt.core.prefs(2KB)
----README.md(3KB)
----.project(368B)
----script()
--------.gitignore(12B)
--------src()
--------script.ebnf(2KB)
--------samples()
--------gen-src()
--------build.xml(2KB)
--------lib()
--------benchmarks()
--------build-lib()
----build.xml(2KB)
----lib()
--------src.zip(374KB)
--------asm-debug-all-5.0.3.jar(641KB)
----test()
--------src()
--------getting-started.md(10KB)

网友评论