Ruby · Avançado · Inglês · Técnico
YARV
Máquina virtual de bytecode do CRuby: o código é compilado para instruções e executado por ela. Substituiu o interpretador de árvore sintática a partir do Ruby 1.9.
Onde usar
Aparece ao investigar desempenho, ao ler o bytecode com RubyVM::InstructionSequence e ao entender como o YJIT compila trechos do código.
Em código
seq = RubyVM::InstructionSequence
i = seq.compile("puts 1 + 2")
puts i.disasm # mostra o bytecode
i.eval # imprime 3Exemplos
Dump the YARV bytecode to see what runs.
Despeje o bytecode do YARV para ver o que executa.
YJIT compiles hot YARV instructions to machine code.
O YJIT compila instruções quentes do YARV para código de máquina.
Cuidado
Não o confunda com a linguagem em si: JRuby e TruffleRuby não usam YARV, e RubyVM só existe no CRuby.
Sinônimos
máquina virtual do Ruby
Origem
Sigla de Yet Another Ruby VM.