Ruby MRI
From Wikipedia, the free encyclopedia
Remove ads
Ο διερμηνέας της Ruby του Matz (Matz's Ruby Interpreter ή Ruby MRI, γνωστός και σαν CRuby) είναι η υλοποίηση αναφοράς της γλώσσας προγραμματισμού Ruby. Επειδή προς το παρόν δεν υπάρχει πρότυπο της γλώσσας Ruby, η υλοποίηση MRI θεωρείται το ντε φάκτο σημείο αναφοράς. Το εγχείρημα RubySpec έχει δημιουργήσει μια μεγάλη σουίτα δοκιμών που αντιστοιχεί στη συμπεριφορά των εκδόσεων 1.8.6/1.8.7/1.9 και προορίζεται για εργαλείο ελέγχου της συνέπειας μιας υλοποίησης με βάση το πρότυπο. Ο Ruby MRI 1.9.2 σχεδιάζεται ώστε να περάσει το RubySpec.[1]
Remove ads
Τον Ιανουάριο του 2009, κυκλοφόρησε η έκδοση 1.9.1 της Ruby. Οι προγραμματιστές της περιέλαβαν την εικονική μηχανή του εγχειρήματος YARV, η οποία και ενσωματώθηκε στο βασικό δένδρο πηγαίου κώδικα της Ruby στις 31 Δεκεμβρίου του 2006 και κυκλοφόρησε σαν μέρος της Ruby 1.9.
Remove ads
Ιστορία
Ο Yukihiro Matsumoto ("Matz") άρχισε να δουλεύει στη Ruby στις 24 Φεβρουαρίου 1993, και κυκλοφόρησε την πρώτη δημόσια έκδοσή της το 1995. Η "Ruby" ονομάστηκε από έναν πολύτιμο λίθο λόγω κάποιου αστείου στο φιλικό κύκλο του Matsumoto σχετικά με το όνομα της γλώσσας προγραμματισμού Perl.[2]
Η έκδοση 1.8 συντηρείται ακόμα και κυκλοφορούν εκδόσεις της (π.χ. έχουν κυκλοφορήσει εκδόσεις της 1.8.7 από τον Απρίλιο του 2008)[3][4]. Η έκδοση αυτή προσφέρει διορθώσεις λαθών αλλά και κάποιες βελτιώσεις στην ίδια τη γλώσσα.
Στην έκδοση 1.9.1 του διερμηνέα (ο κώδικας αποτελεί και τη βάση για την έκδοση 2.0) που κυκλοφόρησε στις 30 Ιανουαρίου 2009[5], προστέθηκε υποστήριξη για Unicode, ο YARV με νήματα πυρήνα (γνωστά και σαν "native threads") [6] και σημαντική βελτίωση στην ταχύτητα[7] σε σχέση με την έκδοση 1.8.
Remove ads
Όροι άδειας λογισμικού
Ο διερμηνέας της Ruby και οι βιβλιοθήκες κυκλοφορούν με διπλές άδειες ελεύθερου λογισμικού και ανοιχτού κώδικα, την GPL και την Αδεια της Ruby (Ruby License[8]).
Λειτουργικά συστήματα
Η υλοποίηση Ruby MRI είναι διαθέσιμη για τα εξής λειτουργικά συστήματα:
- Acorn RISC OS
- Amiga
- BeOS
- DOS (32-bit)
- Internet Tablet OS
- Linux
- Mac OS X
- Microsoft Windows 95/98/2000/2003/NT/XP/Vista
- Microsoft Windows CE
- MorphOS
- OS/2
- OpenVMS
- Syllable
- Symbian OS
- Οι πιο πολλές εκδόσεις του Unix
Η παραπάνω λίστα είναι ενδεικτική.
Κριτική
Κάποιοι περιορισμοί που συχνά αναφέρονται είναι:
- Ταχύτητα -- η απόδοση του διερμηνέα της Ruby είναι τελευταία σε σχέση με άλλες παρόμοιες γλώσσες όπως η Perl και η Python[9][10], κυρίως λόγω της σχεδίασης του διερμηνέα: για να εκτελέσει κώδικα Ruby, ο διερμηνέας δημιουργεί ένα συντακτικό δέντρο από τον πηγαίο κώδικα και στη συνέχεια το εκτελεί κατευθείαν, αντί να το μεταγλωττίσει πρώτα σε κάποια πιο αποδοτική εκτελέσιμη μορφή.
- Προς τα πίσω συμβατότητα (Backward compatibility -- οι εκδόσεις 1.9 και 1.8 έχουν κάποιες μικρές σημασιολογικές διαφορές.[11]
Remove ads
Παραπομπές
Εξωτερικοί σύνδεσμοι
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads