Rhino (intérprete de JavaScript)
# Rhino (intérprete de JavaScript)

Rhino es un intérprete de JavaScript de código abierto desarrollado en lenguaje de programación Java.

## Historia

Rhino comenzó a ser desarrollado en 1997 por Norris Boyd para Netscape Communications Corporation. En esos momentos la compañía necesitaba implementar soporte para JavaScript en su proyecto de suite de Internet Javagator.

En 1998, cuando el proyecto Javagator fue finalmente cancelado, Rhino fue liberado bajo Licencia Pública de Netscape y entregado a la Fundación Mozilla para que continuara su desarrollo.

## Características

* Dos diferentes modos de ejecución:
   * Modo de compilación: Rhino puede compilar el código fuente JavaScript en clases Java. Esta característica estuvo presente desde el inicio del proyecto; actualmente se mantiene como una función opcional.
   * Modo interpretativo: Interpretación directa del JavaScript. Este modo fue agregado en 1998 debido a los problemas de eficiencia del modo de compilación.
* Implementación de JavaScript 1.5, equivalente a ECMAScript 262 Edition 3.
* ECMAScript for XML a partir de la versión 1.6.
* Un intérprete de comandos para ejecutar código JavaScript.
* Soporte para JavaAdapters, que permiten utilizar interfaces de Java en JavaScript y una clase Java en JavaScript.
* Con la descarga se entrega también un depurador.
* Rhino es 100% pure Java.

Rhino está pensado para ser integrado en otras aplicaciones informáticas, por lo que no hay soporte para objetos propios de un navegador web, comúnmente asociados a JavaScript.

## Curiosidades

El nombre Rhino está basado en la tapa del libro Javascript: The Definitive Guide, Third Edition (ISBN 1-56592-392-8), en que se muestra un rinoceronte. El intérprete de Javascript Rhino, está siendo gradualmente sustituido por Nashorn, un intérprete mucho más rápido y eficiente que también compila a clases de Java.

