BeanShell

BeanShell es un lenguaje de scripting dinámico para Java - VM de Pat Niemeyer . Permite que un intérprete ejecute código Java prácticamente sin cambios . Al igual que con Python o Perl , el código se traduce de antemano a un árbol de sintaxis abstracta (AST). BeanShell se usa a menudo como lenguaje para macros , por ejemplo, en el editor de texto jEdit , en Apache JMeter y en Apache ANT .

Además de la sintaxis clásica de Java , BeanShell ofrece algunas de las simplificaciones típicas de los lenguajes de scripting, como la escritura dinámica en lugar de la escritura estática , variables y funciones globales , acceso reflexivo (limitado) al programa en sí y similares. La sintaxis es muy similar a la del Java original, lo que facilita a los programadores de Java cambiar entre los dos lenguajes o traducir. Dado que BeanShell puede heredar de clases Java existentes o implementar cualquier interfaz , puede usarse bien junto con marcos y aplicaciones existentes .

BeanShell extiende la sintaxis de Java especialmente en los dos puntos siguientes, por lo que se debe lograr una mayor productividad.

El código se transfirió a la Fundación Apache, pero no alcanzó el estado de proyecto allí.

Desde la versión 2.0b6 del 5 de febrero de 2016, no se lanzó ninguna versión. Sin embargo, el idioma es estable. Hasta ahora, BeanShell admite solo algunas de las innovaciones sintácticas en Java 1.5.

Un spin-off con el nombre BeanShell2 tuvo lugar en mayo de 2007 en Google Code . El proyecto ha lanzado una serie de correcciones y mejoras a BeanShell. Hay esfuerzos para unir las dos versiones nuevamente.

Las alternativas a BeanShell son Groovy , Jacl para Tcl , Rhino para JavaScript , Jython para Python y JRuby para Ruby , donde Groovy, Jython y JRuby, en contraste con BeanShell, son lenguajes de propósito general y lenguajes de scripting. La sintaxis Groovy, como BeanShell, es compatible con Java, pero también ofrece extensiones como interpolación de cadenas o soporte DSL .

enlaces web