08 abril, 2008

HotRuby, máquina virtual de Ruby con JavaScript

John Resig acaba de publicar un review de un nuevo proyecto llamado HotRuby que lo que hace es convertir un script embebido en la página en formato Ruby en código Javascript ejecutable. En cuatro pasos:

  1. Primero un script local encuentra las etiquetas <script type="text/ruby"></script> y extrae el código en línea de su interior.
  2. El código Ruby es enviado al servidor via XMLHttpRequest.
  3. El script CGI en el servidor (escrito en Ruby 1.9) compila el código Ruby en sus opcodes asociados (código de máquina virtual) y los serializa en una estructura de datos JSON.
  4. El navegador recibe los opcodes, los traduce a Javascript y lo ejecuta
Ver ejemplo. Lo más fascinante son los resultados:
Firefox 3.0 beta 5 :2.47 segundos
Firefox 2 :6.71 segundos
Ruby 1.8.2 :12.25 segundos
Es decir, el resultado es cinco veces más rápido que con la Máquina Virtual propia de Ruby.

Publicar un comentario en la entrada

Últimos links en indiza.com