Est-il un code machine natif compilateur pour le JavaScript?
Je ne parle pas d'une VM.
S'il n'existe pas peut-il être fait?
Je me demande si cela peut être compilée en raison de la nature dynamique de la langue.
Réponses
Trop de publicités?Autant que je sache, il n'y a pas statique compilateurs pour le javascript. C'est certes théoriquement possible; cependant, une compilation statique de javascript aurait besoin d'un très lourd d'exécution à l'appui de toutes ses fonctionnalités (comme le typage dynamique et eval). Comme un petit côté, lorsqu'ils sont présentés avec la nécessité de compiler en statique Python (un autre langage dynamique), la PyPy développeurs fini par créer une langue qui est un sous-ensemble restreint de Python (appelée RPython), vide de certains de Python est plus de fonctions dynamiques, qui était capable d'être compilés statiquement.
Si vous vous demandez ce dans le but de créer un exécutable autonome à partir du code Javascript, je suis sûr qu'il y a des wrappers qui, pour l'essentiel serait de créer un exécutable comtaining votre script et embarque une VM Javascript (malheureusement, je ne connais pas de main gauche).
C'est certainement faisable, bien que la seule façon que je sais comment le faire pour le moment est un processus en deux étapes...
- Compiler le code javascript en Java à l'aide de Mozilla Rhino JSC.
- Compiler le résultant de classe java fichier exécutable à l'aide de quelque chose comme GNU-GCJ.
Pourquoi voudriez-vous, si? Quel avantage avez-vous attendre à trouver?
Il est théoriquement possible, mais il y aura beaucoup de runtime prend en charge les bagages (et même un compilateur Javascript ou d'un interprète à l'appui de eval
).
Vous êtes à la recherche pour un natif du compilateur de code, ou vous cherchez quelque chose qui peut faisceau de code Javascript avec un temps d'exécution en un seul exécutable binaire?
TraceMonkey dans FF3.5 le faire pour certaines parties du code javascript. Vous pouvez être en mesure d'obtenir quelques directions à partir de là!