Emscripten est un compilateur source à source open source permettant de compiler du bitcode LLVM en asm.js, qui peut être exécuté par les navigateurs web.
Le bytecode LLVM étant généré à partir de programmes écrits en langage C ou C++, par extension Emscripten permet donc de compiler un programme C ou C++ en JavaScript. Utilisé avec BinaryEn, il permet de produire du WebAssembly.
Il est compatible avec quelques interfaces de programmation courantes comme la Standard Template Library, la Simple DirectMedia Layer et OpenGL.
Grâce à ce logiciel, des portages JavaScript de différents projets open source ont déjà été réalisés : Gnuplot, zlib, SuperTux, SQLite, etc. En , Mozilla annonce avoir porté, avec l'aide des équipes d'Epic Games le moteur de jeux Unreal Engine sous Firefox, notamment grâce à Emscripten et LLVM. Cette démonstration s'inscrit dans le cadre du développement du module asm.js dans l’interpréteur javascript OdinMonkey destiné à améliorer la vitesse d'exécution des scripts dans le navigateur Mozilla Firefox.
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
asm.js est un langage intermédiaire constituant un sous-ensemble du langage JavaScript. Il permet une amélioration importante des performances pour les applications web écrites en langage à typage statique avec gestion manuelle de la mémoire (comme le C) puis converti en JavaScript par un compilateur source à source. Asm.js ne vise à améliorer les performances que pour un tel code compilé depuis un autre langage, pas celles de code JavaScript écrit à la main.
WebAssembly, abrégé wasm, est un standard du World Wide Web pour le développement d’applications. Il est conçu pour remplacer JavaScript avec des performances supérieures. Le standard consiste en un bytecode, sa représentation textuelle et un environnement d'exécution dans un bac à sable compatible avec JavaScript. Il peut être exécuté dans un navigateur Web et en dehors. WebAssembly est standardisé dans le cadre du World Wide Web Consortium.
We teach the fundamental aspects of analyzing and interpreting computer languages, including the techniques to build compilers. You will build a working compiler from an elegant functional language in
Ce cours traite de la réalisation d'outils SIG et porte sur l'approche méthodologique, l'environnement technologique et institutionnel, le design conceptuel et l'implémentation. La création d'un Web S
Couvre la génération de code pour un compilateur, traduisant un programme Amy à WebAssembly, y compris la gestion de la mémoire et la compilation de correspondance de motifs.