首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ruby是否定义了在其上运行的文件格式?

Ruby是否定义了在其上运行的文件格式?
EN

Stack Overflow用户
提问于 2021-08-03 03:36:16
回答 1查看 58关注 0票数 0

就像运行在JVM上的".class“文件一样,Ruby (MRI或YARV)是否定义了rns在其上的文件格式?我在一些文章中读到,YARV字节码被认为是一种内部格式,这意味着几乎没有关于它的文档或规范,是真的吗?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-03 05:09:02

不,除了语言本身,红宝石没有定义可运行的格式。

确实,ruby没有标准的字节码格式,比如java、etherium和其他。每个Ruby实现-- JRuby、MRI、TruffleRuby等等--都会决定它们如何准确地运行ruby代码。

Ruby实现可以选择实现自己的字节码格式。这些格式很可能对红宝石的实现是保密的,不太可能在生态系统之外被看到。(然而,正如我们看到的语言弹出的在JVM上运行一样,如果其他人愿意的话,也有可能放弃您语言的VM )。

对于在java字节代码JVM jruby上运行的JVM内部运行的ruby实现来说,引入编译步骤来生成本机代码ruby-llvm,甚至有时使用JIT在运行时生成本机代码,有时使用更传统的解释器MRI红宝石,都是完全有效的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68630061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档