BeanShell

Skriptsprachen
BeanShell ist eine dynamische Skriptsprache für die Java-VM von Pat Niemeyer. Sie erlaubt es, nahezu unveränderten Java-Code durch einen Interpreter auszuführen. Wie bei Python oder Perl wird der Code dabei vorher in einen AST übersetzt.

Neben klassischer Java-Syntax bietet BeanShell einige der für Skriptsprachen typischen Vereinfachungen wie Dynamic Typing statt Strong Typing, globale Variablen und Funktionen, (eingeschränkten) reflexiven Zugriff auf das Programm selbst und ähnliches. Die Syntax ist allerdings stark an die des originalen Java angelehnt, was es für Java-Programmierer leicht macht, zwischen beiden Sprachen zu wechseln oder zu übersetzen. Da BeanShell in der Lage ist, von bestehenden Java-Klassen zu erben oder beliebige Interfaces zu implementieren, läßt sie sich gut zusammen mit bestehenden Frameworks und Anwendungen einsetzen.

Eine Spezialität von BeanShell sind die Tatsache, daß Funktionen beziehungsweise Methoden selbst wieder Methoden beinhalten können, und sich selbst als Closure über die Rückgabe von this zum Objekt erheben können. Eine weitere Besonderheit ist die zusätzlich zur klassenbasierten zur Verfügung stehende prototyp-basierte Objektorientierung. Durch diese beiden Features läßt sich bei entsprechender Entfernung von der klassischen Java-Syntax die Produktivität gegenüber Java deutlich steigern.

Aktuell ist Version 2.0 beta 1, die Entwicklung ist relativ langsam, die Sprache daher stabil und ohne größere Fehler.
Im Beitrag enthaltene URLs:
 
nach oben