近日,Mozilla 的 Alon Zakai 成功将一个他曾经用 C++ 编写的游戏转换为 JavaScript 代码并在 Web 上运行。
那时要想将 C++ 转换为 JavaScript 几乎是不能可能的事情,因此他开始着手编写一个开源工具,可以自动将 C++ 代码转换成 JavaScript。
Alon Zakai 表示,他的项目 Emscripten 能够将 C++ 快速的转换为 JavaScript,并且可以兼容现有的浏览器,同时他们还将优化 Firefox 中的 JavaScript 引擎,提高运行速度。
而现在,Emscripten 可以将用 C++ 编写的代码直接转换成 WebAssembly。并且在未来还会支持更多的语言,包括 Rust,Lua,Python,Java 和C#。
使用 WebAssembly,几百万行代码库可以在几秒钟内完成加载,其运行速度能够达到本地程序的 80%。并且随着浏览器引擎的更新换代,预计加载时间和执行速度都将得到进一步的提升。