Voilà une idée qui circule sur Internet; ce n'est peut-être pas la meilleure analogie, mais voici les points qui l'ont inspiré:
- JavaScript est universellement déployé, dans tous les navigateurs Web
- Il est rapide, et devient de plus en plus rapide à chaque nouvelle version des navigateurs et de leurs interpréteurs JavaScript
- JavaScript est un langage de bas niveau, avec très peu de fonctionnalités avancées
- Vous pouvez le fignoler à la main, ou le générer à partir d'un langage de plus haut niveau
L'on pourrait donc dire que JavaScript est devenu en quelque sorte la VM (Machine Virtuelle) pour le Web: c'est l'environnement dans lequel les applications vont s'exécuter. Il y a donc une tendance forte depuis quelques années à en améliorer ses performances, y ajouter des frameworks pour en permettre l'industrialisation, voire même créer des “compilateurs” permettant de passer d'un langage de plus haut niveau vers JavaScript.
Voici deux exemples de langages générant du JavaScript:
- CoffeeScript propose une syntaxe très compacte et cohérente.
- ScriptSharp permet de compiler du code C# en JavaScript, et donc de réutiliser les compétences des développeurs.