Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску
Юкихиро Мацумото, создатель Ruby.

Ruby Interpreter или Ruby MRI Матца (также называемый CRuby ) был эталонной реализацией языка программирования Ruby, названного в честь создателя Ruby Юкихиро Мацумото («Матц»). До спецификации языка Ruby в 2011 году [ необходима цитата ] реализация MRI считалась фактическим эталоном , тем более что независимая попытка создать спецификацию ( RubySpec ) потерпела неудачу. [3] Начиная с Ruby 1.9 и продолжая с Ruby 2.x и выше, официальным интерпретатором Ruby был YARV. («Еще одна Ruby VM»).

Последняя стабильная версия - Ruby 3.0.0 [4]

История [ править ]

Юкихиро МацумотоМацумото ») начал работу над Ruby 24 февраля 1993 года и представил его публике в 1995 году. «Рубин» был назван драгоценным камнем из-за шутки в кругу друзей Мацумото, намекающей на имя Perl. язык программирования. [5]

Ветвь 1.8 поддерживалась до июня 2013 года, [6] и версии 1.8.7 были выпущены с апреля 2008 года. [7] [8] Эта версия содержит исправления ошибок, а также множество улучшений функций Ruby.

Проект RubySpec независимо создал большой набор тестов, который фиксирует поведение 1.8.6 / 1.8.7 / 1.9 как эталонный инструмент соответствия. Ruby MRI 1.9.2 прошел более 99% RubySpec. [9] MRI Ruby 2.2 разбился на одном из тестов. В результате ограниченного использования разработчиками МРТ проект RubySpec был прекращен в конце 2014 года [3].

Условия лицензирования [ править ]

До выпуска 1.9.3 интерпретатор и библиотеки Ruby распространялись как бесплатное программное обеспечение с двумя лицензиями и программное обеспечение с открытым исходным кодом, в соответствии с Стандартной общественной лицензией GNU или лицензией Ruby. [10] В версии 1.9.3 лицензия Ruby была изменена с двойной лицензии с GPLv2 на двойную лицензию с лицензией BSD с двумя пунктами . [11]

Операционные системы [ править ]

Ruby MRI доступен для следующих операционных систем (поддерживаемые версии Ruby могут быть разными):

  • ОС Acorn RISC
  • Amiga
  • BeOS / Haiku
  • DOS (32-бит)
  • IBM i
  • Интернет-планшет ОС
  • Linux
  • Mac OS X
  • Microsoft Windows 95/98/2000/2003 / NT / XP / Vista / 7/8/10
  • Microsoft Windows CE
  • MorphOS
  • OS / 2
  • OpenVMS
  • Слог
  • ОС Symbian
  • Ядро вычислительного узла Blue Gene / L
  • Большинство разновидностей Unix

Этот список не может быть исчерпывающим.

Производительность PowerPC64
Начиная с версии 2.2.1, [12] производительность Ruby MRI на PowerPC64 была улучшена. [13] [14] [15]

Критика [ править ]

Обычно отмечаемые ограничения включают:

Обратная совместимость
Версии 1.9 и 1.8 имеют небольшие семантические различия. [16] Релиз Ruby 2.0 стремился избежать такого конфликта между различными версиями. [17]

Многопоточные программы не могут использовать более одного ядра ЦП из-за глобальной блокировки интерпретатора .

См. Также [ править ]

  • YARV

Ссылки [ править ]

  1. ^ "Ruby-1.8.0 выпущен!" . Проверено 12 января 2018 .
  2. ^ «Выпущен Ruby 2.7.0» . Проверено 7 января 2020 года .
  3. ^ a b Брайан Шираи (31 декабря 2014 г.). «Ruby-разработчики Матца не используют RubySpec, и это вредит Ruby» . Блог Рубиниуса . Проверено 16 ноября 2015 года .
  4. ^ «Выпущен Ruby 3.0.0» . ruby-lang.org . 2021-01-03 . Проверено 3 января 2021 года .
  5. ^ Брюс Стюарт (2001-11-29). «Интервью с создателем Ruby» . linuxdevcenter.com . О'Рейли . Проверено 22 февраля 2014 года .
  6. ^ Shyouhei (30 июня 2013). «Мы удаляем Ruby 1.8.7» . ruby-lang.org . Проверено 22 февраля 2014 года .
  7. ^ Муша, Akinori (2008-05-26). «Ruby Core: выпущен Ruby 1.8.7-preview4» . Проверено 30 мая 2008 . Новая версия Ruby включает в себя множество исправлений ошибок, множество улучшений функций и некоторые улучшения производительности, начиная с версии 1.8.6, при этом сохраняя стабильность и обратную совместимость с предыдущей версией в высокой степени, хотя есть постоянные усилия, которые необходимо предпринять для принятия RubySpec. .
  8. ^ «1.8.7 НОВОСТИ» . Проверено 30 мая 2008 .
  9. ^ Yugui (18 августа 2010). «Выпущен Ruby 1.9.2» . ruby-lang.org . Проверено 22 февраля 2014 года .
  10. ^ "Рубиновая лицензия" . ruby-lang.org . Проверено 22 февраля 2014 года .
  11. ^ "Новости выпуска Ruby 1.9.3" . ruby-lang.org . Проверено 22 февраля 2014 года .
  12. ^ Густаво Фредерико Темпл Педроса, Витор де Лима, Леонардо Бьянкони (2015). «Выпущен Ruby 2.2.1» . Проверено 12 июля +2016 .CS1 maint: несколько имен: список авторов ( ссылка )
  13. ^ Густаво Фредерико Темпл Педроса, Витор де Лима, Леонардо Бьянкони (2015). «Журнал изменений v2.2.1» . Проверено 12 июля +2016 .CS1 maint: несколько имен: список авторов ( ссылка )
  14. ^ Густаво Фредерико Темпл Педроса, Витор де Лима, Леонардо Бьянкони (2014). «Указание энергонезависимых регистров для увеличения производительности в ppc64» . Проверено 12 июля +2016 .CS1 maint: несколько имен: список авторов ( ссылка )
  15. ^ Густаво Фредерико Темпл Педроса, Витор де Лима, Леонардо Бьянкони (2014). «Указание MACRO для увеличения производительности в ppc64» . Проверено 12 июля +2016 .CS1 maint: несколько имен: список авторов ( ссылка )
  16. ^ Рик DeNatale (26 декабря 2007). «Выпущен Ruby 1.9» . Infoq.com . Проверено 22 февраля 2014 года .
  17. ^ Юсуке ЭндоН (24 февраля 2013). «Выпущен Ruby 2.0.0-p0» . ruby-lang.org . Проверено 22 февраля 2014 года .

Внешние ссылки [ править ]

  • Официальный сайт