Ruby ruby 对 WebAssembly 模块支持如何了?

zzz6519003 · 2023年10月08日 · 最后由 Mark24 回复于 2023年10月09日 · 317 次阅读

WebAssembly 的计算潜力引起了广泛关注,但要真正将其潜力完全发挥出来可能需要相当长的时间,可能需要一到两年的时间,因为有很多挑战需要克服。

其中一个挑战是确保 WebAssembly 模块支持所有编程语言,尽管目前主要局限于少数几种语言,如 Rust、C++、Python 和 JavaScript。其他语言仍然面临一些障碍,当开发人员编写代码并一次性部署到多种设备和环境(当然所有设备和环境都兼容)时,即使是 Rust 和 C++ 以及 Python 也会遇到问题。

那么,WebAssembly 的目标是什么呢?虽然号称“一次编写,到处部署”,但更准确的说法可能是你可以编写代码一次,然后在任何 CPU 或设备上同时部署,而且只需极少的配置,甚至无需配置。在某种程度上,可以把它看作是一种高效的编译器(尽管某些人可能有不同看法)。

Mark24 回复

“虚拟机打破了我们将操作系统与硬件视为一对一关系的想法。我们可以在一台硬件上运行很多个操作系统,而容器则通过允许我们安全地(以多租户方式)运行大量共享一个内核的离散文件系统,进一步推动了这一进程。”他接着说:“WebAssembly 代表了第三波浪潮:应用程序不再直接依赖于主机操作系统。它只需声明它需要什么,主机运行时可以满足这些特定需求。最重要的是,开发人员不需要了解目标环境的操作系统或架构。”

Mark24 回复

ruby.wasm is a collection of WebAssembly ports of the CRuby.

why cruby XD

《[JA][Keynote]Ruby meets WebAssembly / Yuta Saito @kateinoigakukun

去年看的,印象中,要付出 5~30M 内存的代价,用于实现解释器相关,还要加载额外 gem。 然后 Thread、Reactor 等高级特性无法使用,原因是 wasm 不支持。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号