Articulo de referencia

Rubí de hierro

{{cite web\n| url = http://blogs.msdn.com/somasegar/archive/2007/07/23/early-look-at-ironruby.aspx\n| title = Early look at IronRuby\n| author = S. Somasegar\n| access-date = Ju...

IronRuby es una implementación del lenguaje de programación Ruby dirigida a Microsoft .NET Framework . Está implementada sobre Dynamic Language Runtime (DLR), una biblioteca que se ejecuta sobre Common Language Infrastructure y que proporciona tipado dinámico y despacho dinámico de métodos, entre otras cosas, para lenguajes dinámicos.

Actualmente, el proyecto está inactivo; la última versión de IronRuby (versión 1.1.3) se publicó en marzo de 2011.

Historia

El 30 de abril de 2007, en MIX 2007, Microsoft anunció IronRuby, que utiliza el mismo nombre que el proyecto IronRuby de Wilco Bauwer con permiso. [ 3 ] Estaba previsto que se lanzara al público en OSCON 2007. [ 4 ]

El 23 de julio de 2007, tal como se había prometido, John Lam y el equipo de diseño de DLR presentaron la versión pre-alfa del compilador IronRuby en OSCON. También anunció un cronograma rápido para una mayor integración de IronRuby en la comunidad de código abierto. [ 5 ]

El 31 de agosto de 2007, John Lam y el equipo de diseño de DLR publicaron el código en su fase pre-alfa en RubyForge. [ 6 ] El código fuente ha seguido siendo actualizado regularmente por el equipo principal de Microsoft (pero no en cada confirmación ). El equipo tampoco acepta contribuciones de la comunidad para la biblioteca principal de Dynamic Language Runtime , al menos por ahora. [ 7 ]

El 24 de julio de 2008, el equipo de IronRuby lanzó la primera versión alfa binaria, en consonancia con OSCON 2008. [ 8 ] El 19 de noviembre de 2008, lanzaron una segunda versión alfa.

El equipo trabajó activamente para dar soporte a Rails en IronRuby. [ 9 ] [ 10 ] Se empezaron a ejecutar algunas pruebas funcionales de Rails, pero aún quedaba mucho trabajo por hacer para poder ejecutar Rails en un entorno de producción. [ 11 ]

El 21 de mayo de 2009, lanzaron la versión 0.5 junto con RailsConf 2009. Con esta versión, IronRuby podía ejecutar algunas aplicaciones Rails , pero aún no en un entorno de producción. [ 12 ]

La versión 0.9 se anunció como OSCON 2009. [ 13 ] Esta versión mejoró el rendimiento. [ 14 ] La versión 1.0 RC1 estuvo disponible el 20 de noviembre de 2009. [ 15 ]

La versión 1.0 estuvo disponible el 12 de abril de 2010 en dos versiones diferentes:

  • La opción preferida, que se ejecuta sobre .NET 4.0.
  • Una versión con características más limitadas, que se ejecutaba sobre .NET 2.0. Esta versión era la única compatible con Mono . [ 16 ]

El equipo de IronRuby planeaba dar soporte a Ruby 1.8.6 solo para las versiones de puntos 1.0, y a la versión 1.9 solo para las próximas versiones 1.x, omitiendo el soporte para Ruby 1.8.7. [ 17 ] [ 18 ]

En julio de 2010, Microsoft despidió a Jimmy Schementi , uno de los dos miembros restantes del equipo central de IronRuby, y dejó de financiar el proyecto. [ 19 ] [ 20 ] En octubre de 2010, Microsoft anunció que los proyectos Iron (IronRuby e IronPython ) se estaban transformando en proyectos "externos" y permitiendo que "los miembros de la comunidad hicieran contribuciones sin la participación de Microsoft ni el patrocinio de un empleado de Microsoft". [ 21 ]

La última versión publicada de IronRuby fue el 13 de marzo de 2011 como la versión 1.1.3. [ 22 ]

Arquitectura

Soporte mono

IronRuby puede funcionar igual de bien en Mono que en Microsoft Common Language Runtime (CLR), [ 23 ] pero como el equipo de IronRuby solo lo prueba con CLR en Windows , [ 24 ] puede que no se compile en Mono dependiendo de la compilación. [ 25 ] [ 26 ] [ 27 ]

Interoperabilidad .NET

La interoperabilidad entre las clases de IronRuby y las clases regulares de .NET Framework es muy limitada porque muchas clases de Ruby no son clases de .NET. [ 28 ] Sin embargo, un mejor soporte para lenguajes dinámicos en .NET 4.0 podría aumentar la interoperabilidad en el futuro. [ 29 ] [ 30 ]

Compatibilidad con Silverlight

IronRuby era compatible con Silverlight . Podía utilizarse como motor de scripting en el navegador, al igual que el motor JavaScript . [ 31 ] Los scripts de IronRuby se pasaban como simples scripts JavaScript del lado del cliente en <script>etiquetas. También era posible modificar el marcado XAML incrustado . [ 32 ]

La tecnología que la sustentaba se llamaba Gestalt. [ 33 ]

// Script de inicio de DLR . <script src= "http://gestalt.ironruby.net/dlr-latest.js" type= "text/javascript" >// Script del lado del cliente pasado a IronRuby y Silverlight. <script type= "text/ruby" > window.Alert("Hola desde Ruby") </script>

Lo mismo funcionó para IronPython . [ 34 ]

Infraestructura de pruebas

IronRuby integró RubySpec , un proyecto para escribir una especificación completa y ejecutable para el lenguaje de programación Ruby. El repositorio Git de IronRuby incluye una copia de las pruebas de RubySpec, incluido el marco de pruebas MSpec. [ 35 ]

Licencia

IronRuby se publicó anteriormente bajo la Licencia Pública de Microsoft , que es una licencia de estilo BSD certificada por OSI . [ 36 ]

El 16 de julio de 2010, Microsoft volvió a licenciar IronRuby junto con el DLR bajo la Licencia Apache 2.0 . [ 37 ]

Lecturas adicionales

Véase también

Referencias

  1. S. Somasegar. "Primer vistazo a IronRuby" . Consultado el 25 de julio de 2007 .
  2. "RubyForge: IronRuby: Información del proyecto" . Archivado del original el 25 de septiembre de 2016. Consultado el 7 de septiembre de 2007 .
  3. Wilco Bauwer. "El rubí de hierro de Microsoft" . Archivado del original el 29 de septiembre de 2007. Consultado el 24 de julio de 2007 .
  4. John Lam. "Microsoft e IronRuby" . Archivado del original el 12 de junio de 2007. Consultado el 18 de junio de 2007 .
  5. John Lam. "Un primer vistazo a IronRuby" . Archivado del original el 26 de julio de 2007. Consultado el 23 de julio de 2007 .
  6. Lam, John. "¡IronRuby en Rubyforge!" . Archivado del original el 3 de septiembre de 2007. Recuperado el 31 de agosto de 2007. Hoy, debes descargar el código fuente del repositorio Subversion de IronRuby en Rubyforge . Necesitarás un cliente Subversion; recomendamos TortoiseSVN. Para compilar el código fuente desde la línea de comandos, también debes tener Ruby instalado en tu computadora.
  7. Lam, John (29 de abril de 2008). "Respecto a IronRuby... Qué cierto suena según este blog" . Archivado del original el 16 de marzo de 2009. Recuperado el 25 de mayo de 2008. El DLR no acepta contribuciones de la comunidad (...) Hoy no enviamos cambios a SVN en cada confirmación SNAP exitosa .
  8. Lam, John (24 de julio de 2008). "IronRuby en OSCON" . Archivado del original el 7 de agosto de 2008. Recuperado el 4 de agosto de 2008. Estamos lanzando nuestra primera versión binaria. En este paquete, estamos adoptando un enfoque de "baterías incluidas" y lanzando las bibliotecas estándar de Ruby en él.
  9. "IronRuby on Rails" . Archivado del original el 29 de mayo de 2009. Consultado el 25 de mayo de 2008 .
  10. Lam, John (24 de mayo de 2008). "IronRuby r112 ya está disponible" . Archivado del original el 16 de marzo de 2009. Consultado el 25 de mayo de 2008 .
  11. Lam, John (25 de mayo de 2008). "Pregunta sobre IronRuby/Rails" . Archivado del original el 17 de marzo de 2009. Recuperado el 25 de mayo de 2008. No creo que estemos cerca del final todavía :) Apenas podemos ejecutar pruebas funcionales de Rails ahora, y hay mucho más trabajo de biblioteca por hacer antes de que podamos empezar a pensar en la implementación. 
  12. Schementi, Jimmy (25 de mayo de 2008). "IronRuby en RailsConf 2009" . Recuperado el 25 de mayo de 2008. Que IronRuby ejecute Rails no es nuevo, pero hacerlo bien o completamente sí lo es. IronRuby ahora puede ejecutar aplicaciones Rails reales, en lugar de solo ejemplos sencillos de "hola mundo". Esto no significa que IronRuby en Rails esté listo para producción, pero es una gran muestra de progreso.
  13. "IronRuby 0.9" . 23 de julio de 2009. Archivado del original el 12 de mayo de 2009. Consultado el 3 de agosto de 2009 .
  14. Cangiano, Antonio (3 de agosto de 2009). "Comparación del rendimiento de IronRuby, Ruby 1.8 y Ruby 1.9 en Windows" . Recuperado el 3 de agosto de 2009 .
  15. "IronRuby 1.0RC1" . 20 de noviembre de 2009. Archivado del original el 21 de diciembre de 2009. Consultado el 29 de diciembre de 2009 .
  16. "Notas de la versión 1.0 de IronRuby" . 12 de abril de 2010. Archivado del original el 16 de abril de 2010. Recuperado el 17 de abril de 2010. IronRuby ahora viene en dos versiones: una que se ejecuta sobre .NET 4.0 y otra que se ejecuta en cualquier framework anterior a partir de .NET 2.0 SP1. La versión de .NET 4.0 ofrece un tiempo de inicio más rápido, compatibilidad con la palabra clave dynamic de C# y acceso a las nuevas características de .NET 4.0. Por lo tanto, la versión de .NET 4.0 es la descarga preferida ahora, ya que Microsoft .NET Framework 4.0 está disponible públicamente desde hoy. Para compatibilidad con Mono, use el archivo zip de la versión 2.0 SP1.
  17. "Compatibilidad con MRI 1.8.7" . 12 de febrero de 2010. Archivado del original el 28 de septiembre de 2011. Consultado el 6 de marzo de 2010 .
  18. "Compatibilidad con MRI 1.8.7" . 14 de febrero de 2010. Archivado del original el 28 de septiembre de 2011. Recuperado el 6 de marzo de 2010. Versiones de IronRuby 1.0.x: SOLO compatible con ruby-1.8.6; Versiones de IronRuby 1.x: SOLO compatible con ruby-1.9.
  19. "No eres tú, soy yo: Microsoft mata IronRuby" . InfoWorld . 11 de agosto de 2010. Consultado el 28 de diciembre de 2012 .
  20. Schementi, Jimmy (6 de agosto de 2010) ."Comienza a difundir la noticia": el futuro de Jimmy e IronRuby . Consultado el 28 de diciembre de 2012. En general , veo una seria falta de compromiso con IronRuby y con el lenguaje dinámico en .NET en general. En el momento de mi partida, Tomas y yo éramos los únicos empleados de Microsoft que trabajábamos en IronRuby.
  21. Zander, Jason. "Nuevos componentes y colaboradores para IronPython e IronRuby" . Microsoft . Consultado el 27 de diciembre de 2014 .
  22. "IronRuby 1.1.3" . ironruby.codeplex.com. 13 de marzo de 2011. Archivado del original el 30 de mayo de 2013. Consultado el 19 de mayo de 2013 .
  23. Miguel de Icaza (27 de julio de 2009). "Mejorando la compatibilidad de Mono con .NET CLR" . Consultado el 3 de agosto de 2009. Desde que tenemos memoria, la mayoría de las nuevas versiones de IronPython, IronRuby o Dynamic Language Runtime expusieron nuevas funcionalidades faltantes en Mono .
  24. Sanghyeon, Seo (6 de agosto de 2008). "IronRuby y Mono" . Archivado del original el 16 de marzo de 2009. Recuperado el 13 de septiembre de 2008 .
  25. Vander Schelden, Wim (4 de septiembre de 2008). "IronRuby y Mono" . Archivado del original el 16 de marzo de 2009. Recuperado el 13 de septiembre de 2008 .
  26. Hall, Ben (23 de enero de 2009). "DLR Daily Builds (incluyendo IronRuby)" . Archivado del original el 15 de marzo de 2009. Recuperado el 23 de enero de 2009 .
  27. Porto Carrero, Ivan (26 de mayo de 2009). "mono builds" . Archivado del original el 23 de febrero de 2012. Recuperado el 5 de junio de 2009 .
  28. Hagenlocher, Curt (16 de diciembre de 2008). "Xna+IronRuby+RubyNewb=dolor de cabeza" . Archivado del original el 16 de marzo de 2009. Recuperado el 20 de diciembre de 2008 .
  29. Brotherus, Robert (12 de diciembre de 2008). "Enlace de datos WPF con objetos Ruby" . Archivado del original el 25 de marzo de 2009. Recuperado el 13 de diciembre de 2008 .
  30. "Dynamic .NET: Creación de mapas interactivos de Bing con Silverlight e IronRuby" . learn.microsoft.com . 22 de septiembre de 2015.
  31. IronRuby en el navegador - IronRuby.net
  32. "Creación de una aplicación WPF en IronRuby" . InfoQ .
  33. Schementin, Jimmy (22 de julio de 2009). "Gestalt: Ruby y Python en el navegador, otra vez" . Recuperado el 19 de enero de 2018 .
  34. "Silverlight: Integración de scripts IronRuby/DLR en XAML mediante IValueConverter y controles de usuario personalizados | Chris Pietschmann" . pietschsoft.com .
  35. "RubySpec" . GitHub . Consultado el 23 de octubre de 2010. El repositorio GIT de IronRuby incluye una copia de las pruebas RubySpec, incluido el marco de pruebas MSpec, en External.LCA_RESTRICTED\Languages\IronRuby\mspec. Esto facilita la modificación de las pruebas existentes o la creación de nuevas pruebas, así como la corrección de errores en el código fuente de IronRuby, todo ello con una única confirmación en el repositorio de IronRuby.
  36. Bort, Julie (14 de abril de 2010). "Después de tres años de esfuerzo, IronRuby de código abierto de Microsoft es estable y está disponible" . Network World .
  37. "Licencia IronRuby" . 16 de julio de 2010. Archivado del original el 6 de diciembre de 2010. Consultado el 27 de julio de 2010 .
  • Página principal de IronRuby
  • IronRuby archivado el 30 de diciembre de 2009 en Wayback Machine en Codeplex .
  • Código fuente de IronRuby
  • Entrada del blog de S. Somasegar anunciando IronRuby
  • Estado de IronRuby por John Lam en RubyConf 2007
  • IronRuby: El lenguaje adecuado para el trabajo adecuado, por John Lam en PDC2008
Obtenido de " https://en.wikipedia.org/w/index.php?title=IronRuby&oldid=1336957793 "