XULRunner
# XULRunner

XULRunner es un entorno de tiempo de ejecución elaborado por la Fundación Mozilla para ofrecer un back-end común para aplicaciones basadas en XUL. Sustituye al «Gecko Runtime Environment», un proyecto con un objetivo similar que no se encuentra actualmente en desarrollo.

La primera versión estable para desarrolladores de XULRunner fue publicada en febrero de 2006, basada en el código fuente de Mozilla 1.8. Las versiones alfa basadas en Mozilla 1.9 fueron publicadas en 2007.

## Usos

Todas las aplicaciones basadas en XUL tales como Mozilla Firefox, Mozilla Thunderbird, Flickr Uploader, SeaMonkey, Sunbird, Miro, Joost, ActiveState Komodo, Instantbird y Songbird son capaces de ejecutarse en XULRunner.

El nuevo juego de la serie Simon the Sorcerer, (Simon the Sorcerer 4: Chaos happens) "Simon el Brujo 4: Mas el Caos sucede", usa XULRunner.

El servicio de eMusic dispone de la descarga de una aplicación llamada eMusic Remote que usa XULRunner.

XULRunner 1.9, la versión actual de XULRunner, es utilizada en Firefox 3 y en el próximo SeaMonkey 2.0.

### Beneficios

Los beneficios de tener un entorno de ejecución compartido son los mismos que proporcionan las bibliotecas compartidas. Al ser sistemas basados en código fuente -es decir, sistemas en los que los programas son compilados desde el código fuente en lugar de descargarse en formato binario- tienen varios beneficios para los desarrolladores, como la reducción del tiempo de compilación, la menor necesidad de ancho de banda y de espacio de almacenamiento. El menor consumo en espacio de disco y en el uso de memoria - cuando se utilizan varias aplicaciones basadas en XUL al mismo tiempo - sólo se hace efectivo cuando el sistema utiliza más de una aplicación que depende del entorno en tiempo de ejecución. Si bien el entorno en tiempo de ejecución o la aplicación se actualizan por separado en diferentes momentos (Lo cual sucede mayormente con el software que no es escrito directamente por Mozilla) En el caso de sistemas basados en código fuente, los desarrolladores que utilicen código común no tendrán que incluir dicho código en los paquetes distribuidos.

Además en el caso de XULRunner, siendo un lenguaje de marcas interpretado, o posiblemente en el futuro un script en tiempo de ejecución «just-in-time» pre-compilado, los desarrolladores no tendrán necesidad de compilar ninguna parte del código fuente en código objeto (binario) para sus aplicaciones que únicamente usan lenguajes de marcas y scripts.

El uso de un entorno compartido en tiempo de ejecución no está exento de problemas. Entre estos, el más importante es el desarrollo de aplicaciones que usan características no incluidas en una versión específica del entorno en tiempo de ejecución (probablemente debido a la obsolescencia). Esto se puede evitar haciendo capaces a los sistemas de instalar varias versiones de XULRunner y permitiendo a los desarrolladores utilizar una versión específica en tiempo de ejecución, o proporcionando compatibilidad a través de capas (layers). Este no es un problema para los programas dependientes, los cuales son continuamente actualizados y reescritos.

