YARV
   HOME

TheInfoList



OR:

YARV (
Yet another Among programmers, yet another (often abbreviated ya, Ya, or YA in the initial part of an acronym) is an idiomatic qualifier in the name of a computer program, organisation, or event that is confessedly unoriginal. Stephen C. Johnson is credited ...
Ruby VM) is a
bytecode Bytecode (also called portable code or p-code) is a form of instruction set designed for efficient execution by a software interpreter. Unlike human-readable source code, bytecodes are compact numeric codes, constants, and references (norma ...
interpreter that was developed for the
Ruby programming language Ruby is an interpreted, high-level, general-purpose programming language which supports multiple programming paradigms. It was designed with an emphasis on programming productivity and simplicity. In Ruby, everything is an object, including p ...
by
Koichi Sasada Koichi Sasada is a Japanese computer scientist and a Ruby core committer. Formerly a member of Matz's team at Heroku, he will continue development on the Ruby interpreter. He was also an assistant professor at the University of Tokyo from 2008 to ...
. The goal of the project was to greatly reduce the execution time of Ruby programs. Since YARV has become the official Ruby interpreter for Ruby 1.9, it is also named KRI (Koichi's Ruby Interpreter), in the same vein as the original
Ruby MRI Matz's Ruby Interpreter or Ruby MRI (also called CRuby) was the reference implementation of the Ruby programming language named after Ruby creator Yukihiro Matsumoto ("Matz"). Until the specification of the Ruby language in 2011, the MRI impleme ...
, named in honor of Ruby's creator
Yukihiro Matsumoto , also known as Matz, is a Japanese computer scientist and software programmer best known as the chief designer of the Ruby programming language and its original reference implementation, Matz's Ruby Interpreter (MRI). His demeanor has brough ...
.


Performance

Benchmark Benchmark may refer to: Business and economics * Benchmarking, evaluating performance within organizations * Benchmark price * Benchmark (crude oil), oil-specific practices Science and technology * Benchmark (surveying), a point of known elevati ...
s by rubychan.de showed significant increases in performance. Benchmarks by Antonio Cangiano showed speed improvements over other Ruby VMs, with 1.9 on average four times faster than the original interpreter. All evaluations comprised a mix of mostly synthetic benchmarks.


History

YARV was merged into the Ruby
Subversion Subversion () refers to a process by which the values and principles of a system in place are contradicted or reversed in an attempt to transform the established social order and its structures of power, authority, hierarchy, and social norms. Sub ...
repository on January 1, 2007. It was released as part of Ruby 1.9.0 on December 26, 2007, replacing
Ruby MRI Matz's Ruby Interpreter or Ruby MRI (also called CRuby) was the reference implementation of the Ruby programming language named after Ruby creator Yukihiro Matsumoto ("Matz"). Until the specification of the Ruby language in 2011, the MRI impleme ...
.


See also

*
Parrot virtual machine Parrot was a register-based process virtual machine designed to run dynamic languages efficiently. It is possible to compile Parrot assembly language and Parrot intermediate representation (PIR, an intermediate language) to Parrot bytecode an ...
*
Rubinius Rubinius was an alternative Ruby (programming language), Ruby implementation created by Evan Phoenix. Based loosely on the Smalltalk-80 ''Blue Book'' design, Rubinius sought to "provide a rich, high-performance environment for running Ruby code." ...
*
Ruby programming language Ruby is an interpreted, high-level, general-purpose programming language which supports multiple programming paradigms. It was designed with an emphasis on programming productivity and simplicity. In Ruby, everything is an object, including p ...


References


External links


YARV home page
Note: obsolete now that YARV is merged into Ruby
YARV: Yet Another RubyVM ... on Rails?
- Koichi Sasada's RubyConf 2006 presentation Ruby (programming language) {{Compu-lang-stub