WebAssembly 的未来:将逐渐解锁整个“技能树”

时间: 2018-10-30阅读: 1277标签: 语言
编译: OSC-王练
https://www.oschina.net/news/101159/the-future-of-webassembly

WebAssembly 在2017年受到主流浏览器的支持,并发布了 MVP 版本(Minimum Viable Product,最简可行产品)。虽然 WebAssembly 社区组致力于使 WebAssembly 向后相容,让现在开发的 WebAssembly 应用程式,仍可以在未来的浏览器中运作,但这并不代表 WebAssembly 功能已经完整,MVP 绝非最终版本。相反,WebAssembly 还将增加许多新功能,而这些新功能将从根本上颠覆 WebAssembly 所能实现的工作。


为消除人们对 WebAssembly 的误解,WebAssembly 社区组以 RPG 游戏中人物养成的“技能树”形式,对 WebAssembly 的未来发展路径做了非常详细的解释。他们表示目前已经完全掌握这些技能中的前几项,后续需要慢慢解锁整个技能树。


WebAssembly 在 MVP 版本阶段满足 4 个基本技能要求:编译、快速执行、压缩和线性内存分配。使用 WebAssembly 的人知道他们不想只支持 C 和 C ++,而是希望能够将许多不同的语言编译为 WebAssembly 。经 WebAssembly 编译器编译的应用需要能够快速执行,满足需求。而为了加速载入速度,WebAssembly 还需具备压缩能力,减少使用者的等待时间。另外,WebAssembly 需要有别于 JavaScript 使用内存方式,能够直接管理使用的内存,在加上安全因素的考量,WebAssembly 采用线性内存模式。


社区组表示,WebAssembly 的下一个目标是平滑运行那些更重的应用程序,比如 Photoshop、Gmail 等。为确保此类应用能在浏览器中运行良好,他们需要解锁新一批的“技能”,包括支持多线程、SIMD(单指令流多数据流)、64位寻址、流式编译(在下载的同时编译 WebAssembly 文件)、分层编译器、隐式 HTTP 缓存以及一些其他改进。


一旦以上功能全部就位,WebAssembly 又将进入下一个阶段 —— 与 JavaScript 互操作,包括 js 和 WebAssembly 之间的快速调用、简便的数据交换、ES模块集成、工具链集成和向后兼容性。


此外,他们还想在 WebAssembly 中重写 JavaScript 框架的大部分内容,并使静态类型的 compile-to-js 语言可编译为 WebAssembly 。想要实现这两个目标,WebAssembly 还需要支持高阶的语言功能,包括垃圾回收、异常处理、调试以及尾调用(Tail calls)。


更多功能和具体进度,可查阅博客原文


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/1221

html语言学习的7个秘诀

WEB前端开发学习过程中,作为一个新手入门级别的菜鸟你,要如何的高效的学习呢?html语言学习的7个秘诀;新手们有一个常见的错误就是犹豫于判断哪种编程语言是做好的、最该先学的。

javascript属于什么语言?

JavaScript(通常缩写为JS)是一种高级的、解释型的编程语言;它是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象编程,命令式编程,以及函数式编程

WebAssembly的过去、现在和未来

为了能够让其他语言的代码在浏览器中运行,WebAssembly被创造出来。它拥有更好性能,更小的size,能够更快的加载和执行。我们无需编写WebAssembly的代码,只需要将其他高级语言编译成WebAssembly,这样就能在浏览器中复用大量的其他语言现有的代码。

一种全新的、用户友好的超级计算机编程语言

当今唯有超级计算机才有足够的计算能力来应对科学研究中那些最顶尖的挑战,但在这些超级机器上进行编程却很艰难,这对科学探索而言是一种阻碍。几十年前,计算机也曾成本昂贵、操作复杂、数量稀少。

谁将取代 JavaScript?

谁能取代 JavaScript 似乎是一个老生常谈的话题,很多人都提出过各自不同的看法。本文作者则提出了一个新的视角供你参考:JavaScript 风头正劲,但 WebAssembly 可能已经敲响了它的丧钟

别了,JavaScript;你好WebAssembly

作为JavaScript替代,一种Web开发的新形式已经浮出水面:WebAssembly.Web开发与JavaScript开发向来是同义词。就是说,直到现在。但一种新的Web开发形式已然出现,声言会取代JavaScript

web网页多语言的实现方案_前端实现多语言切换

需要在web中实现多语言的切换,当用户语言切换完成后下次重新打开网页,也是上次设置的语言进行显示。在用户点击切换语言后,把选择的语言版本保存在cookie中;定义语言的标识+内容的json字符串

JavaScript是如何成为一门真正的编程语言的?

说到 JavaScript 的历史,最耳熟能详的便是网景公司在1995年雇佣 Brendan Eich,后者花了10天便设计出初版 JavaScript 的故事了。一方面由于设计之初的理念所致,另一方面受限于沙箱机制所隔离的能力

Hello World各类编程语言写法

Hello World程序指的是指在计算机屏幕上输出Hello, World!(意为「世界,你好!」)这行字符串的计算机程序。一般来说,这是每一种计算机编程语言中最基本、最简单的程序,亦通常是初学者所编写的第一个程序

10个编译为JavaScript的语言

你不用写一行Javascript或者考虑这种语言的局限,就能生产在浏览器能运行的代码。这篇文章包括了十种有趣的语言能够编译为Javascript,在浏览器或者Node.js中被执行

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!