是语言翻译吗?还是字节码解释器/JIT 编译器?我在哪里可以了解有关实现的更多信息(除了浏览源代码)?
最佳答案
这是一个名为 YARV 的字节码解释器,由 Sasada Koichi 编写。
下面是它的外观示例:
puts RubyVM::InstructionSequence.compile("1+1").disasm
== disasm: #<ISeq:<compiled>@<compiled>>================================
0000 trace 1 ( 1)
0002 putobject_OP_INT2FIX_O_1_C_
0003 putobject_OP_INT2FIX_O_1_C_
0004 opt_plus <callinfo!mid:+, argc:1, ARGS_SIMPLE>, <callcache>
0007 leave
进一步阅读:
虽然 MRI 还没有 JIT,但有 Ruby+OMR 项目,它试图添加一个基于 Eclipse OMR 的 JIT 编译器:
关于ruby - Ruby MRI 是什么样的解释器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42609901/