« Pourquoi JavaScript n’est pas un concurrent digne de ce nom »

Avik Chaudhuri, expert en design de langage de programmation chez Adobe, écrit un article trollesque sur son blog intitulé « Le Mythe du V8 : Pourquoi JavaScript n’est pas un concurrent digne de ce nom » :

Les programmes en JavaScript sont non typés, (relativement) petits et sont publiés/chargés comme du code source, puis compilés et exécutés à la volée. En comparaison, les programmes en ActionScript sont typés, (relativement) gros et sont compilés en code binaire, publiés/chargés en code binaire, puis exécutés à la volée.

Il y a quelque chose d’intrinsèquement mauvais dans un débat qui se base sur le fait que JavaScript peut faire tout ce lourd travail après chargement, et aussi bien, si ce n’est mieux, qu’un langage qui a l’opportunité de faire tout ce lourd travail avant le pré-chargement. Ce qui ne va pas dans un tel argument est qu’il repose sur, qu’il dépends de la magie. Malheureusement, tôt ou tard, on apprends tous que le père Noël n’existe pas : la question est, peut-on faire ça plus tôt ?

Basé sur le même argument, alors PHP ne serait pas un langage digne de ce nom en comparaison avec du .NET. Dans son argument, Avik oublie également de mentionner qu’il compare JavaScript, un langage ouvert inclus par défaut dans un navigateur, à ActionScript, un langage propriétaire nécessitant un plugin pour fonctionner. La conclusion de son article m’a fait beaucoup rire.

Alors, arrêtons de nous en faire avec JavaScript, et visons plus haut. Alors qu’on se concentre sur le jeu, les programmes en ActionScript nécessiteront de meilleures optimisations pour la performance. ActionScript a le bon mélange d’ADN pour réussir, et il deviendra le langage du 21ème siècle qu’il aurait toujours pu être.

Et le tout, mesdames et messieurs, via un plugin (Flash Player) qui prends pourtant 100% des ressources de mon processeur dès le moindre affichage de bannière publicitaire. Ça, c’est de la magie.