OceaBase开发者大会落地上海!4月20日共同探索数据库前沿趋势!报名戳 了解详情
写点什么

WebAssembly 浏览器预览版收集社区反馈

  • 2016-11-21
  • 本文字数:1064 字

    阅读完需:约 3 分钟

WebAssembly 的开发已经进入浏览器预览阶段,这是标准化路上的一个重要里程碑。

在 Chrome、Edge 和 Firefox 中,用户可以开启一个 WebAssembly 的预览版,它使用 WebAssembly 社区小组过去一直在研发的二进制格式的“候选发布版本”。另外,存在一份开发人员指引,它简要地介绍了用C 语言创建一个WebAssembly 程序、编译并发布结果到浏览器的步骤。

与之前的实验性支持预览版(experimental support preview)不同,本浏览器预览版是浏览器兼容的并且稳定的。浏览器厂商正积极鼓励用户使用它以收集相关反馈。

在微软Edge浏览器预览版的声明中,项目经理Limin Zhu 展示了一个编译后的结果的例子。

例子中,C++ 的阶乘函数

复制代码
int factorial(int n)
{
if (n == 0)
return 1;
else
return n * factorial(n-1);
}

编译成 WebAssembly 之后是这样的:

复制代码
binary | text
20 00 | get_local 0
42 00 | i64.const 0
51 | i64.eq
04 7e | if i64
42 01 | i64.const 1
05 | else
20 00 | get_local 0
20 00 | get_local 0
42 01 | i64.const 1
7d | i64.sub
10 00 | call 0
7e | i64.mul
0b | end

该二进制格式尽管称为候选发布版本,但还不适合生产环境使用,还会发生改动。 WebAssembly 的路线图提前对开发人员作了如下警告:

开发人员应该意识到,在 WebAssembly 的浏览器预览版和公开发布版之间至少将有一个突破性的变更,开发人员需要更新工具链和二进制文件。

工程的当前这个阶段将会在 2017 年第一季度结束,之后将会准备一份规格说明书草案。再之后,厂商将能默认开启这项特性,不再用功能标志(feature flag)隐藏它了。Mozilla 的 Luke Wagner如果计划进展顺利,2017 年3 月份发布的Firefox 52 将默认开启该特性。

值得注意的是,苹果和基于WebKit 的Safari 浏览器明显不在该浏览器厂商之列。该公司尽管一直很低调,但是也在研发该特性 Brendan Eich 说“在苹果发布之前,关于苹果的一切进展都是推测”,但是“苹果热衷于 WebAssembly,一切看起来都在正轨上”。WebAssembly 社区小组的谷歌代表兼联合组长 Ben Titzer苹果确实“派遣了代表参加我们举办的面对面峰会”,“他们确实好像已经开始研发实现了,但是我们应该谨慎,不要曲解或者过度解读”。

查看英文原文: https://www.infoq.com/news/2016/11/webassembly-browser-preview


感谢足下对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-11-21 18:001590
用户头像

发布了 33 篇内容, 共 10.5 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

赢在起跑线:商品企划系统为鞋服品牌带来的竞争优势解析

第七在线

低代码与AIGC技术:重塑软件开发的新篇章

EquatorCoco

低代码 AIGC 低代码人工智能

BSC链DAPP质押合约代币系统开发

l8l259l3365

已解决org.springframework.beans.factory.support.BeanDefinitionValidationException Bean验证异常的正确解决方法,亲测有效!

小明Java问道之路

境外社交数据采集遇到的问题及云手机解决方案

Ogcloud

数据采集 云手机 海外云手机 云手机海外版 国外云手机

结构化思维助力Prompt创作:专业化技术讲解和实践案例

快乐非自愿限量之名

技巧 项目开发 结构化 技巧分享

真香定律!我用这种模式重构了第三方登录

EquatorCoco

Python 重构 第三方登录 项目开发

低代码与数字经济:推动软件开发创新的新引擎

不在线第一只蜗牛

软件开发 低代码 数字经济

【教程】移动应用安全加固技术解析

DAPP去中心化交易质押分红系统开发模式案例

西安链酷科技

BSC链DAPP质押合约代币系统开发|详情需求|指南方案

西安链酷科技

DAPP系统开发

直播预告|从一张 CD 说起,关于播放器的前世今生

声网

数字藏品开发公司 nft平台搭建

西安链酷科技

数字藏品开发

iPaas数据传输的方式

RestCloud

API ETL ipaas 数据传输方式

Python 服务实现可观测性最佳实践

观测云

Python 可观测性

淘宝商品详情数据接口用于ERP选品

tbapi

淘宝商品详情数据接口 淘宝API接口 淘宝商品数据采集 淘宝数据ERP

儋州市营商环境建设局:二维码一扫,办事更便捷!

草料二维码

二维码 草料二维码

体育赛事直播平台,全方位引流策略分享

软件开发-梦幻运营部

阿里巴巴淘口令API推动电商行业社交化营销创新

技术冰糖葫芦

API 接口

Pygame游戏开发:一次编写,多平台运行

技术冰糖葫芦

API 接口

解密Spring中的Bean实例化:推断构造方法(上)

不在线第一只蜗牛

Java spring 源码 bean

什么是云游戏?云游戏平台可以运行3A游戏吗?

Ogcloud

游戏 云游戏 3A游戏 3A云游戏

低代码:数智化助力新农业发展

快乐非自愿限量之名

低代码 数字化 新农业

项目包装宣发推广、白皮书官网搭建、ppt制作、mg动画设计

西安链酷科技

宣发

选择适合舞台的LED租赁显示屏指南

Dylan

融资租赁 婚礼策划PPT LED显示屏 led显示屏厂家 舞台表演

为什么要用云手机进行国外社媒监控?

Ogcloud

云手机 海外云手机 云手机海外版 国外云手机

谈谈鸿蒙 Harmony 的跨端技术方案

Onegun

鸿蒙 HarmonyOS

gRPC-第二代rpc服务

京东科技开发者

HashData的湖仓一体思考:Iceberg、Hudi特性讲解与支持方案

酷克数据HashData

你所不知道的端口耗尽(三)

快乐非自愿限量之名

Python 后端 端口 开发语言

打通易快报与金蝶K3Wise,实现采购流程高效协同!

聚道云软件连接器

案例分享

WebAssembly浏览器预览版收集社区反馈_JavaScript_David Iffland_InfoQ精选文章