Une autre raison est que la machine virtuelle Java est un écosystème hautement complet, hautement optimisé et bien développé. En soi, il rivalise extrêmement bien avec tous les autres langages compilés. (Je ne dirai pas que c'est la meilleure machine virtuelle polyvalente du marché, mais j'ai certainement misé ma carrière sur cela.) Donc, avoir accès à la JVM, à moins d'écrire en bytecode, est souhaitable en soi.
Cependant, la machine virtuelle Python est bonne, mais (rien contre Python) a de sérieux inconvénients. L'environnement d'exécution Python convient bien à la nature dynamique du langage, mais peut vous surprendre lorsque vous vous familiarisez avec son utilisation de la mémoire, son verrouillage global ou son modèle de thread.
Dans les comparaisons tête à tête, la machine virtuelle Java est généralement deux fois plus rapide que la machine virtuelle Python. La JVM (étonnamment) rivalise même bien avec le code compilé en mode natif, basé sur les optimisations "à chaud" qu’elle réalise. Et cela ne compte même pas la manipulation de fil plus sophistiquée, etc.
J'adore Python, vraiment, et je déteste le dire, mais parfois, la performance me donne un coup de pied - sinon, pourquoi les bibliothèques Python critiques telles que numpy ou scipy doivent-elles retomber dans le code C?
En d'autres termes, les personnes qui gravitent autour de Python le font parce qu'elles aiment le langage . Toutefois, si vous souhaitez écrire un nouveau langage adapté à vos préférences, vous ferez bien mieux de le compiler sur la JVM, car votre nouveau langage idiosyncratique démarrera dans l’un des meilleurs environnements d’exploitation disponibles (subjectivement, voire peut-être le meilleur).