Beanshell, futur standard Java
Par Laurent simon le mercredi, 15 juin 2005, 01:43 - Développer - Lien permanent
Le langage de script BeanShell vient d'être soumis au JCP (JSR-274). Autant j'étais réticent à l'inclusion de Groovy (qui est une véritable daube à mon avis), autant BeanShell me paraît être un candidat intéressant. Je l'utilise pas mal comme langage de script dans des moteurs de templates ou comme langage glue sur du client riche. Lèger, pas super rapide, il réuni à la fois les qualités de Javascript et de Java tout en conservant une compatibilité (presque) parfaite avec le langage Java.
Source: Artima.
Commentaires
Tu reproches à Groovy son implémentation ou sa conception?
Sa conception surtout.
Les idées à la base sont plutôt bonnes mais çà a été conçu avec les pieds. La syntaxe n'est pas homogène et fini par rapidement poser des problèmes inextricables. Groovy n'a pas été pensé et conçu comme un langage. On est plutôt en présence d'un ensemble de fonctionnalités interessantes inspirées de différentes source qui ont été ajoutée au fil de l'eau en amènageant le langage au fur et à mesure de leur intégration. Le résultat, c'est un langage à la Frankeinstein.
L'implémentation était également pourrie au départ mais s'est améliorée au fil du temps. Il est toujours possible d'améliorer une implémentation. Par contre, une mauvaise conception, ça ne se rattrape jamais 'd'autant plus lorsqu'il sagit de la syntaxe d'un langage).
Le contre exemple de Groovy, est par exemple le langage Nice. Il a toutes les fonctionnalités de Groovy mais lui est super bien conçu. Il améne de réelles avancées à la fois en terme de solidité et de fonctionnalités tout en restant en continuité de Java sans introduire de choses ésotériques. C'est un exemple de principe car pour l'instant Nice n'est pas un langage de script mais nécessite un compilateur.