Buscar
Social
Ofertas laborales ES
« La decisión del tribunal de justicia europeo si va a influenciar al juicio entre Oracle y Google | Main | Sentencia judicial en Europa muy relevante para el caso entre Oracle y Google »
jueves
may032012

Doppio: una JVM implementada en Javascript

Doppio es un proyecto opensource que ha realizado una implementación de la máquina virtual Java en Javascript (más concretamente en Coffeescript, un lenguaje que compila a Javascript). A nivel de implementación de la máquina virtual propiamente dicha, el proyecto está bastante avanzado, soportando ya los 200 opcodes de Java, tipos genéricos, reflexión y entrada y salida, entre otros. Según sus creadores, su propósito es "permitir que Java se ejecute en un navegador web sin ningún tipo de plugin".

Donde todavía es un trabajo en progreso es en el tema de dar soporte a las librerías; por lo de ahora soportan algunas de las más comunes de los paquetes java.lang y java.util, pero cuando uno comienza a escribir código por su cuenta pronto se encuentra con problemas debido a librerías que no están soportadas.

Podéis probar la demo de Doppio aquí. Al abrir este enlace en vuestro navegador tendréis acceso a una consola que corre en Javascript, y que os permitirá ejecutar los comandos Javac y Java, y además acceder a un pequeño editor de texto (edit) para modificar ficheros que se almacenan en el Local storage de vuestro navegador. La demo es bastante funcional para pequeños ejemplos, aunque el compilador es tremendamente lento.

Aunque desde un punto de vista conceptual han progresado bastante, creo que el objetivo de permitir que Java se ejecute en un navegador web sin plugins no va a ser viable en la práctica. Pero en cualquier caso, se trata de un experimento interesante.

PrintView Printer Friendly Version

EmailEmail Article to Friend

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>