ART

 

.

Ο YARV (Yet another Ruby VM, Άλλη μια εικονική μηχανή για τη Ruby) είναι ένας διερμηνέας κώδικα byte (bytecode) που αναπτύχθηκε για τη γλώσσα προγραμματισμού Ruby από τον Koichi Sasada. Ο στόχος του εγχειρήματος ήταν να μειωθεί σημαντικά ο χρόνος εκτέλεσης των προγραμμάτων σε Ruby.

Επειδή ο YARV έγινε ο επίσημος διερμηνέας της Ruby στην έκδοση της Ruby 1.9, ονομάζεται επίσης KRI (Koichi's Ruby Interpreter).
Απόδοση

Δοκιμές από το rubychan.de έδειξαν σημαντικές βελτιώσεις στην απόδοση.[1] Δοκιμές από τον Antonio Cangiano έδειξαν μια κατά μέσο όρο τέσσερις φορές βελτίωση σε σχέση με τον αυθεντικό διερμηνέα.[2] Και οι δύο εκτιμήσεις βασίστηκαν σε κυρίως συνθετικά δοκιμαστικά σενάρια.

Το Ruby on Rails παρατηρήθηκε να τρέχει περίπου κατά 15% γρηγορότερα με τον YARV σε σχέση με τη Ruby 1.8.6.[3] Όμως, ο αρχικός χρόνος που χρειάζεται το πρόγραμμα (startup time) και ο χρόνος που χρειάζεται το ActiveRecord εξακολουθούν να είναι μεγάλοι.
Ιστορία

Την 1η Ιανουαρίου 2007, ο YARV ενσωματώθηκε με τον κώδικα στο σύστημα Subversion της Ruby.[4]

Ο δημιουργός της Ruby, Yukihiro Matsumoto, ενσωμάτωσε πλήρως τον YARV στην έκδοση Ruby 1.9.0 που κυκλοφόρησε στις 26 Δεκεμβρίου 2007.[5] Από αυτήν τη στιγμή, ο YARV έγινε ο επίσημος διερμηνέας της Ruby, αντικαθιστώντας αυτόν που είχε αναπτύξει ο Matsumoto.
Δείτε επίσης

Rubinius
Ruby
Ruby on Rails

Αναφορές

Benchmarks: Ruby 1.8 and Ruby 1.9 Αρχειοθετήθηκε 2007-01-05 στο Wayback Machine. (rubychan.de)
Cangiano, Antonio (12 Μαρτίου 2007). «The Great Ruby Shootout». Ανακτήθηκε στις 1 Φεβρουαρίου 2008.
«Rails on 1.9: first benchmarks, YARV exposed to non-synthetic tests». eigenclass.org. 28 Μαρτίου 2007. Αρχειοθετήθηκε από το πρωτότυπο στις 18 Δεκεμβρίου 2008. Ανακτήθηκε στις 13 Σεπτεμβρίου 2008. "When benchmarking basic requests with a minimalistic schema (only one int column), even though YARV serviced requests 15% faster, it took much longer to load the environment (50% slower). This comes as no surprise since plain old (evil) eval is slower in YARV(...)In fact, the mere fact of requiring active_record (and indirectly ActiveSupport) causes a sharp decrease in performance."
«The Ruby VM: Episode I». Αρχειοθετήθηκε από το πρωτότυπο στις 26 Μαΐου 2012. Ανακτήθηκε στις 13 Ιουλίου 2010. - Shades of Gray

merge YARV Αρχειοθετήθηκε 2012-09-04 στο Wayback Machine. announcement by Koichi Sasada

Εξωτερικοί σύνδεσμοι

YARV: Yet Another RubyVM ... on Rails? - Koichi Sasada's RubyConf 2006 presentation (Αγγλικά)
The Great Ruby Shootout (December 2008) - Ruby 1.9.1 (YARV) versus other Ruby VMs (Αγγλικά)
YARV in The Computer Language Benchmarks Game - Ruby 1.9.0(YARV) versus Ruby 1.8.6 (Αγγλικά)
YARV in The Computer Language Benchmarks Game - Ruby 1.9.1 versus Ruby 1.8.7 (Αγγλικά)

Γλώσσα προγραμματισμού Ruby
Ολοκληρωμένα περιβάλλοντα ανάπτυξης

NetBeans RubyForge RadRails RubyMine ActiveState_Komodo

Υλοποιήσεις
Ruby MRI YARV JRuby IronRuby Rubinius XRuby MacRuby RubyJS HotRuby
Εφαρμογές
RubyGems Rake Interactive Ruby Shell Capistrano
Βιβλιοθήκες / Πλαίσια ανάπτυξης
Adhearsion Camping eRuby (RHTML) Hobo Merb Nitro RubyCocoa Ruby on Rails Ramaze Sinatra Padrino QtRuby
Λογισμικό εξυπηρετητή
Mongrel Phusion Passenger (mod_rails/mod_rack) WEBrick mod_ruby
Άλλα
Application Archives Document format Book Guides Ruby Central Hackety Hack RubyKaigi

Εγκυκλοπαίδεια Πληροφορικής

Κόσμος

Αλφαβητικός κατάλογος

Hellenica World - Scientific Library

Από τη ελληνική Βικιπαίδεια http://el.wikipedia.org . Όλα τα κείμενα είναι διαθέσιμα υπό την GNU Free Documentation License