2008-09-16 14 views

Respuesta

12

Maglev. Tendrá el beneficio de velocidad de toda la optimización que se ha invertido en una MV de Smalltalk durante muchos, muchos años. Además, automáticamente conservará todos sus datos de forma casi automática, por lo que ya no es necesario estar a la vuelta de las capas de asignación de objetos relacionales, etc.

+0

que se ve muy interesante, voy a añadir al poste pregunta original. ¡Gracias por señalar esto! – ctcherry

+0

Depende de una máquina virtual. Espero que esto requiera mucho tiempo para configurarse en un entorno de producción. –

5

Ruby 1.9 (YARV) nos da una buena idea de hacia dónde se dirige Ruby, pero no recomendaría su uso para producción. Si bien es mucho más rápido que 1.8, incluso algunas partes de la sintaxis siguen cambiando, por lo que no creo que puedas llamarlo estable. Tiene algunas características y sintaxis nuevas e interesantes que seguramente encontrarán su camino en todas las otras implementaciones a lo largo del tiempo.

JRuby y IronRuby son útiles ya que dan acceso a ruby ​​a una amplia gama de nuevas bibliotecas y entornos en los que el ruby ​​no podría usarse de otro modo. Todavía no he encontrado mucho uso para ellos, pero creo que es genial que existan. Pueden permitir que el rubí se infiltre en entornos corporativos donde de otro modo no estaría permitido. Eso sólo puede ser una buena cosa.

Rubinius y Maglev son probablemente los proyectos más interesantes, pero también aquellos en los que su beneficio para la comunidad probablemente sea el más lejano en el futuro. Rubinius bien puede convertirse en una VM "pura" de vanguardia para el lenguaje Ruby, lo que permite que el código Ruby se ejecute mucho más rápido de lo que puede hacerlo ahora. Maglev también parece extremadamente prometedor, respaldado por más de 20 años de experiencia en VM. También proporcionará funciones que van más allá de una máquina virtual estándar, pero por supuesto, esto se logrará a costa de la portabilidad del código.

En general, lo que más me entusiasma es la competencia entre estas implementaciones. Tener proyectos en competencia trabajando para mejorar el rubí solo puede fortalecer el ecosistema de rubíes. Por lo que he visto también, mientras exista la competencia, es amigable; cada proyecto dando y tomando ideas el uno del otro. El trabajo realizado por los equipos JRuby y Rubinius en la creación de una especificación de rubí es probablemente el resultado más importante hasta el momento, ya que ayudará a garantizar que todas las implementaciones permanezcan compatibles.

3

Nadie mencionó MacRuby todavía? Supongo que ahora es un poco específico para Mac, pero probablemente también podría compilarse para GNU o Étoilé objetivos-c runtimes.

Además, estoy a la espera de levitación magnética :)

+0

Muy tarde, pero agregado a la publicación de preguntas, ¡gracias! – ctcherry