BeanShell - BeanShell

BeanShell
Paradigma Orientada a objetos , scripting
Diseñada por JCP
Apareció por primera vez 1999 ; Hace 22 años ( 1999 )
Lanzamiento estable
2.1.0 / 22 de diciembre de 2020 ; hace 6 meses ( 2020-12-22 )
Disciplina de mecanografía Dinámico , fuerte
Lenguaje de implementación Java
Plataforma JVM
SO Multiplataforma
Licencia 2012: Apache-2.0
2001: SPL-1.0 o LGPL-2.1-solamente
1999: LGPL-2.1-only
Sitio web github .com / beanshell / beanshell
Influenciado por
Java , JavaScript , Perl

BeanShell es un intérprete de código fuente Java pequeño, gratuito e integrable con características de lenguaje de secuencias de comandos de objetos, escrito en Java . Se ejecuta en Java Runtime Environment (JRE), ejecuta dinámicamente la sintaxis estándar de Java y la amplía con conveniencias de scripting comunes como tipos sueltos, comandos y cierres de métodos, como los de Perl y JavaScript.

Características

Si bien BeanShell permite a sus usuarios definir funciones que se pueden llamar desde un script, su filosofía subyacente ha sido no contaminar su sintaxis con demasiadas extensiones y " azúcar sintáctico ", asegurando así que el código escrito para un compilador de Java normalmente se puede ejecutar. interpretativamente por BeanShell sin ningún cambio y, casi tanto, viceversa. Esto convierte a BeanShell en una popular herramienta de prueba y depuración para la plataforma de máquina virtual Java (JVM).

BeanShell admite objetos con secuencias de comandos como cierres de métodos simples como los de Perl y JavaScript .

BeanShell es un proyecto de código abierto y se ha incorporado a muchas aplicaciones, como Apache OpenOffice , Apache Ant , WebLogic Server Application Server, Apache JMeter , jEdit , ImageJ , JUMP GIS , Apache Taverna y muchas otras. BeanShell proporciona una interfaz de programación de aplicaciones (API) fácil de integrar . También se puede ejecutar en modo de línea de comandos o dentro de su propio entorno gráfico.

Historia

Las primeras versiones de BeanShell (0.96, 1.0) fueron lanzadas por Patrick Niemeyer en 1999, seguidas de una serie de versiones. BeanShell 1.3.0 se lanzó en agosto de 2003. La versión 2.0b1 se lanzó en septiembre de 2003, culminando con la versión 2.0b4 en mayo de 2005, que a enero de 2015 es la versión más reciente publicada en la página web oficial.

BeanShell se ha incluido en la distribución de Linux Debian desde 1999.

BeanShell se estaba estandarizando a través del Proceso de comunidad de Java (JCP) bajo JSR 274.

Después de la aprobación por parte del JCP de la boleta de revisión de BeanShell JSR en junio de 2005, no hubo actividad visible en torno a BeanShell. El estado de JSR 274 es "inactivo".

Desde Java 9, Java en su lugar incluye JShell , un shell de bucle de lectura-evaluación-impresión (REPL) diferente basado en la sintaxis de Java, lo que indica que BeanShell no continuará.

En mayo de 2007 se creó una bifurcación de BeanShell, BeanShell2 , en el ahora desaparecido sitio web de Google Code . El proyecto beanshell2 ha realizado una serie de correcciones y mejoras en BeanShell y varias versiones. A partir de enero de 2020, la última versión de BeanShell2 es v2.1.9, lanzada en marzo de 2018. Desde el cierre de Google Code, el proyecto se ha alojado en GitHub .

En diciembre de 2012, luego de una propuesta para aceptar BeanShell como un proyecto de Apache Incubator , BeanShell obtuvo la licencia de The Apache Software Foundation y se migró a Apache Extras, cambiando la licencia a Apache License 2.0 . El proyecto no fue aceptado, sino que se proyectó que se convertiría en parte de Apache Commons en el futuro.

Sin embargo, debido a cambios en las circunstancias personales de los desarrolladores, la comunidad BeanShell no completó el cambio a Apache, sino que permaneció en Apache Extras. Desde entonces, el proyecto lanzó BeanShell 2.0b5, que es utilizado por Apache OpenOffice y Apache Taverna .

En 2013 se creó un instalador automático de Windows, BeanShell Double-Click, que incluye funciones de integración de escritorio.

Ver también

Notas

Referencias

enlaces externos