stringtranslate.com

Resonancia magnética de Ruby

Yukihiro Matsumoto, el creador de Ruby.

El intérprete Ruby de Matz o Ruby MRI (también llamado CRuby ) es una implementación del lenguaje de programación Ruby que lleva el nombre del creador de Ruby, Yukihiro Matsumoto ("Matz"). Hasta la especificación del lenguaje Ruby en 2012, [3] la implementación de MRI se consideraba la referencia de facto , especialmente porque un intento independiente de crear la especificación ( RubySpec ) había fracasado. [4] A partir de Ruby 1.9 y continuando con Ruby 2.x y posteriores, el intérprete Ruby oficial ha sido YARV ("Yet Another Ruby VM"). [5]

Ruby 1.8 es la última versión que utiliza MRI.

Historia

Yukihiro Matsumoto ("Matz") comenzó a trabajar en Ruby el 24 de febrero de 1993 y lo lanzó al público en 1995. "Ruby" recibió el nombre de piedra preciosa debido a una broma dentro del círculo de amigos de Matsumoto que aludía al nombre del lenguaje de programación Perl . [6]

La rama 1.8 se mantuvo hasta junio de 2013, [7] y se lanzaron versiones 1.8.7 desde abril de 2008. [8] [9] Esta versión proporciona correcciones de errores, pero también muchas mejoras de funciones de Ruby.

El proyecto RubySpec ha creado de forma independiente un conjunto de pruebas de gran tamaño que captura el comportamiento de las versiones 1.8.6/1.8.7/1.9 como herramienta de conformidad de referencia. Ruby MRI 1.9.2 aprobó más del 99 % de RubySpec. [10] MRI Ruby 2.2 falló en una de las pruebas. Como resultado de la limitada aceptación por parte de los desarrolladores de MRI, el proyecto RubySpec se suspendió a fines de 2014. [4]

Condiciones de licencia

Antes de la versión 1.9.3, el intérprete y las bibliotecas de Ruby se distribuían como software libre y de código abierto con doble licencia , bajo la Licencia Pública General GNU o la Licencia Ruby. [11] En la versión 1.9.3, la Licencia de Ruby ha cambiado de una licencia dual con GPLv2 a una licencia dual con la licencia BSD de 2 cláusulas . [12]

Sistemas operativos

Ruby MRI está disponible para los siguientes sistemas operativos (las versiones de Ruby compatibles pueden ser diferentes):

Esta lista puede no ser exhaustiva.

Rendimiento de PowerPC64
Desde la versión 2.2.1, [13] se mejoró el rendimiento de Ruby MRI en PowerPC64 . [14] [15] [16]

Limitaciones

Las limitaciones más comunes incluyen:

Compatibilidad con versiones anteriores
Las versiones 1.9 y 1.8 tienen ligeras diferencias semánticas. [17] El lanzamiento de Ruby 2.0 buscó evitar tal conflicto entre diferentes versiones. [18]

Los programas con subprocesos no pueden utilizar más de un núcleo de CPU debido al bloqueo del intérprete global .

Véase también

Referencias

  1. ^ "¡Ya está disponible Ruby-1.8.0!" . Consultado el 12 de enero de 2018 .
  2. ^ "Lanzamiento de Ruby 1.8.7" . Consultado el 24 de marzo de 2023 .
  3. ^ "ISO - ISO/IEC 30170:2012 - Tecnología de la información — Lenguajes de programación — Ruby". iso.org . Consultado el 24 de marzo de 2023 .
  4. ^ por Brian Shirai (31 de diciembre de 2014). "Los desarrolladores de Ruby de Matz no usan RubySpec y esto está perjudicando a Ruby". Blog de Rubinius . Consultado el 16 de noviembre de 2015 .
  5. ^ Matsumoto, Yukihiro (26 de diciembre de 2007). "Asunto: [ANN] Se lanzó Ruby 1.9.0". Archivado desde el original el 30 de diciembre de 2007.
  6. ^ Bruce Stewart (29 de noviembre de 2001). "Una entrevista con el creador de Ruby". linuxdevcenter.com . O'Reilly . Consultado el 22 de febrero de 2014 .
  7. ^ shyouhei (30 de junio de 2013). "Retiramos Ruby 1.8.7". ruby-lang.org . Consultado el 22 de febrero de 2014 .
  8. ^ Musha, Akinori (26 de mayo de 2008). "Ruby Core: Ruby 1.8.7-preview4 ha sido publicado" . Consultado el 30 de mayo de 2008. La nueva versión de Ruby incluye muchas correcciones de errores, muchas mejoras de funciones y algunas mejoras de rendimiento desde la versión 1.8.6, manteniendo la estabilidad y la compatibilidad con versiones anteriores en un alto grado, aunque hay esfuerzos en curso que deben realizarse para adoptar RubySpec.
  9. ^ "1.8.7 NEWS" . Consultado el 30 de mayo de 2008 .
  10. ^ Yugui (18 de agosto de 2010). «Se lanzó Ruby 1.9.2». ruby-lang.org . Consultado el 22 de febrero de 2014 .
  11. ^ "Licencia Ruby". ruby-lang.org . Consultado el 22 de febrero de 2014 .
  12. ^ "Noticias sobre la versión 1.9.3 de Ruby". ruby-lang.org . Consultado el 22 de febrero de 2014 .
  13. Gustavo Frederico Temple Pedrosa, Vitor de Lima, Leonardo Bianconi (2015). "Lanzamiento de Ruby 2.2.1" . Consultado el 12 de julio de 2016 .{{cite web}}: CS1 maint: varios nombres: lista de autores ( enlace )
  14. Gustavo Frederico Temple Pedrosa, Vitor de Lima, Leonardo Bianconi (2015). "Registro de cambios v2.2.1" . Consultado el 12 de julio de 2016 .{{cite web}}: CS1 maint: varios nombres: lista de autores ( enlace )
  15. ^ Gustavo Frederico Temple Pedrosa, Vitor de Lima, Leonardo Bianconi (2014). "Especificación de registros no volátiles para aumentar el rendimiento en ppc64" . Consultado el 12 de julio de 2016 .{{cite web}}: CS1 maint: varios nombres: lista de autores ( enlace )
  16. ^ Gustavo Frederico Temple Pedrosa, Vitor de Lima, Leonardo Bianconi (2014). "Especificación de MACRO para aumentar el rendimiento en ppc64" . Consultado el 12 de julio de 2016 .{{cite web}}: CS1 maint: varios nombres: lista de autores ( enlace )
  17. ^ Rick DeNatale (26 de diciembre de 2007). «Ruby 1.9 lanzado». Infoq.com . Consultado el 22 de febrero de 2014 .
  18. ^ Yusuke Endoh (24 de febrero de 2013). «Se lanzó Ruby 2.0.0-p0». ruby-lang.org . Consultado el 22 de febrero de 2014 .

Enlaces externos