Le projet AssemblyScript compile un sous-ensemble de TypeScript en WebAssembly
il est open source et disponible sous licence Apache 2.0
AssemblyScript est un projet qui vise � cr�er un pont entre WebAssembly et le surensemble JavaScript typ� de Microsoft, TypeScript. WebAssembly est un langage de programmation binaire de bas niveau pour le d�veloppement d�applications dans les navigateurs Web. Introduit en 2015, il est actuellement standardis� dans le cadre du W3C. WebAssembly est destin� � d�passer les performances de JavaScript en mati�re d'ex�cution d'op�rations � forte intensit� de calcul dans un navigateur, avec un format de code binaire portable con�u pour rendre les applications Web plus rapides.
D�apr�s la page GitHub du projet, AssemblyScript d�finit un sous-ensemble de TypeScript qu'il compile en WebAssembly. Il vise � fournir � toute personne avec un background en TypeScript et les API JavaScript standard un moyen confortable de compiler en WebAssembly, �liminant la n�cessit� de basculer entre les langages ou d'en apprendre d'autres uniquement � cette fin.
Ce que fait AssemblyScript sous le capot, c'est qu'il � relie � l'API du compilateur de TypeScript au backend de Binaryen (un compilateur et toolchain pour WebAssembly, �crit en C ++.) Il faut �galement noter que le compilateur lui-m�me est �crit et bas� sur TypeScript et aucune d�pendance binaire n'est requise pour commencer � l'utiliser. En outre, � chaque programme AssemblyScript est syntaxiquement valide en TypeScript, mais pas n�cessairement s�mantiquement �, est-il pr�cis� sur la page GitHub du projet.
Plut�t que de proc�der � une r�impl�mentation aussi proche que possible de TypeScript au d�triment de la performance, AssemblyScript tente, � aussi raisonnable que possible �, de supporter ses fonctionnalit�s, en laissant intentionnellement de c�t� certaines constructions dynamiques. Il faut noter que :
- tous les types doivent �tre annot�s pour �viter les conversions implicites de type ind�sirables ;
- les param�tres optionnels de fonction n�cessitent une expression d'initialisation ;
- les types d'union (sauf ClassType | null repr�sentant un nullable), any et undefined ne sont pas pris en charge par conception ;
- le r�sultat des expressions logiques &&/|| est toujours bool.
Le d�veloppement d�AssemblyScript est actuellement en phase b�ta comme l'indique son d�veloppeur principal, Daniel Wirtz. Le projet est disponible sous licence Apache, version 2.0. Vous pouvez �galement d�j� tester AssemblyScript directement dans votre navigateur.
Source : GitHub
Et vous ?
Que pensez-vous de l�utilit� de projet ?
L'avez-vous d�j� test� ? Qu'en dites-vous ?
Partager