BeanShell

BeanShell é uma linguagem de script dinâmica para Java - VM de Pat Niemeyer . Ele permite que o código Java praticamente inalterado seja executado por um interpretador . Tal como acontece com Python ou Perl , o código é traduzido em uma árvore de sintaxe abstrata (AST) de antemão . BeanShell é frequentemente usado como uma linguagem para macros , por exemplo, no editor de texto jEdit , no Apache JMeter e no Apache ANT .

Além da sintaxe Java clássica , BeanShell oferece algumas das simplificações típicas de linguagens de script, como tipagem dinâmica em vez de tipagem estática , variáveis e funções globais , acesso (limitado) reflexivo ao próprio programa e similares. A sintaxe é muito semelhante à do Java original, o que torna mais fácil para os programadores Java alternar entre as duas linguagens ou traduzir. Como o BeanShell é capaz de herdar de classes Java existentes ou implementar qualquer interface , ele pode ser bem usado junto com estruturas e aplicativos existentes .

BeanShell estende a sintaxe Java especialmente nos dois pontos a seguir, por meio dos quais uma maior produtividade deve ser alcançada.

O código foi transferido para a Fundação Apache, mas não atingiu o status de projeto lá.

Da versão 2.0b6 em 5 de fevereiro de 2016, nenhuma versão foi lançada. No entanto, a linguagem é estável. Até agora, o BeanShell suporta apenas algumas das inovações sintáticas em Java 1.5.

Um spin-off com o nome BeanShell2 ocorreu em maio de 2007 no Google Code . O projeto lançou uma série de correções e melhorias para o BeanShell. Há esforços para reunir as duas versões novamente.

Alternativas para BeanShell são Groovy , Jacl para Tcl , Rhino para JavaScript , Jython para Python e JRuby para Ruby , em que Groovy, Jython e JRuby, em contraste com BeanShell, são linguagens de propósito geral e linguagens de script. Como o BeanShell, a sintaxe Groovy é compatível com Java, mas também oferece extensões como interpolação de string ou suporte DSL .

Links da web