W3C 启动 WebAssembly 工作组

作者及发布日期

由:
发布:

WebAssembly

2017年8月3日,W3C正式启动了 WebAssembly工作组(Web Assembly WorkingGroup)

W3C的 Bradley Nelson 在官方博客上发布文章,概括介绍了该工作组的定位。

WebAssembly是一个虚拟指令集体系架构(virtual ISA),整体架构包括核心的ISA定义、二进制编码、程序语义的定义与执行,以及面向不同的嵌入环境(如Web)的应用编程接口(WebAssembly API)。其初始目标是为C/C++等语言编写的程序经过编译,在确保安全和接近原生应用的运行速度更好地在Web平台上运行。

WebAssembly支撑了一系列的应用场景,包括但不局限于:

-在线游戏

-视频与音频的编解码器(Codecs)、定制化的数据压缩、3D模型

-媒体编辑工具

-语音合成与语音识别

-客户端的计算机视觉(Client-side computer vision)

-将现有的胖客户端(应用程序)移植到Web平台

-任何需要在用户终端以极致速度运行的程序

WebAssembly也将为Web平台提供更多的编程语言选择,它可能支持各种良好定义的预编译语言与Web的集成和嵌入。WebAssembly不仅仅是将C/C++或Rust等预编译语言集成进来,同时也可以支持类似Lua、Python以及Ruby等解释型语言。我们希望在WebAssembly中更好的支持受控对象(managed objects)以及DOM+JS binding,这样,就可以支持在Web平台上连接更加丰富的程序设计语言家族。

即便开发者只基于Javascript开发应用,WebAssembly也可以为JavaScript提供更加丰富的、基于其他程序设计语言的、功能强大的库,支持类似物理模拟(physical simulation)、数字信号处理、机器学习等需要更强性能的计算场景。

关于WebAssembly仍有很多新的机制要去探索,我们会继续保留WebAssembly社区组并将其作为新机制的孵化器。我们计划让 Wasm 成为一个更好的编译目标,并支持诸如线程(threads)、受控对象(managed objects)、直接DOM/JS绑定、单指令流多数据流(SIMD)、内存映射(memory mapping)等机制。

在过去两年,W3C的 WebAssembly 社区组(Community Group)已经作为一个交流平台,吸引了浏览器厂商及其他Web技术开发社区的注意。WebAssembly的首个版本已经在4个浏览器引擎上得到实现,并正式进入工作组标准制定流程,在未来成为Web标准的一部分。在此期间,社区组组织了多次面对面讨论会,并基于 github 进行线上的协作。我们也希望在2017年11月的TPAC 2017会议上,吸引更多W3C社区的支持和参与。

随着W3C WebAssembly工作组的成立,我们希望尽快推动 WebAssembly规范的标准化进程。

欢迎您关注W3C在WebAssembly方面的努力,更多信息,请参阅W3C WebAssembly工作组,本文博客文章英文原文,及W3C的其他官方博客讨论

相关的 RSS

(0)条评论

该贴的评论区已关闭。