Механизм JavaScript V8 (также встроенный в Google Chrome, но он с открытым исходным кодом и свободно лицензируется, поэтому вы можете использовать его в следующем написанном вами браузере!) Компилирует Javascript на нативный компьютер код - конечно, он делает это «вовремя» (как большинство современных компиляторов - Java, C # и т. д.), а не «опережает время» (как это сделал Фортран в 1954 году, когда компьютеры были слишком слабы для обработки компиляции в разгар казни). Я был бы удивлен, если бы другие хорошие движки JS, такие как в самых последних версиях Firefox и Safari, не делали то же самое.
Похоже, вы не пропагандируете «javascript как скомпилированный язык» (поскольку он, очевидно, уже скомпилирован, если вы используете хороший движок JS), а скорее «опережающую» компиляцию для него (просто когда большинство современных языков по существу отказываются от преждевременной компиляции). Вытеснение машинного кода, а не компилируемого кода по проводам звучит как по большей части ужасная идея - гораздо больший размер, трудности в поддержке одного процессора против другого, кошмары безопасности при правильной загрузке в песочницу, и т. Д., И т. Д.) С незначительными с точки зрения компенсации преимуществами.
Тем не менее, если вы действительно заинтересованы в передаче машинного кода клиенту, попробуйте nativeclient (пока клиент является машиной x86 - забудьте о каждом смартфоне на планете, о многих нетбуках , старые добрые маки и т. д.) - по крайней мере, это сулит кошмары безопасности. Если и когда вы довольны nativeclient, то преобразование своевременного компилятора в опережающий является гораздо более сложной технической задачей (если, конечно, вы хотите продолжать использовать Javascript для исходных текстов, а не для других языков, разумеется). ).