onur (./161) :
Si on fait des choses en dehors du browser, c'est pour avoir quelque chose de rapide => déjà on installe pas Java du coup.On utilise du C, et donc spidermonkey (et sa nouvelle méthode de tracing à l'execution pour JITter à fond le chemin d'execution le plus emprunté localement dans le temps) Bref.
Et comment crois-tu que les jvm sont codées ? qu'est-ce que tu crois qu'une jvm fait ? ben pareil, jit et toutes les optimizations qu'on attend d'un interpréteur de byte code. Y'a même jrockit qui met du code en inline, mais après c'est relou parce que les stacktraces ressemblent un peu a rien avec plein de "optimized"

Je sais que la jvm a des points faibles, mais ca m'étonnerai qu'on ne retrouve pas ces mêmes points faibles dans une autre machine virtuelle.
Et si tu es si sûr de toi, pour le coup je veux bien tenter le pari qu'une jvm est plus rapide que spidermonkey sur un algo de ton choix.

Sinon sur les autres points, je vois un peu mieux. En effet avec groovy l'héritage etc. est plus.. classique disons. Ca ressemble à ce qu'on rencontre dans les langages objets classiques donc c'est moins déroutant pour quelqu'un qui se met à un langage dynamique.En fait, le système d'héritage de JS est vraiment différent mais c'est pas pour autant qu'il est inexistant. Les pointeurs automatiques qu'on appelle "prototype" pointent vers l'objet dont on hérite. Prendre l'habitude de ça, ca peut etre une barrière pour ceux qui viennent de java ou C++.
oui on peut le faire en js, j'appelle juste ca la methode "manuelle".
Sinon pour les requetes SQL et les fenetres, c'est du binding avec des libs tout ça. Pas vraiment du langage.
mais c'est un des points très important quand tu choisi un langage. Mais bon, js a aussi l'air d'être fourni, d'après ton lien.