官方: 我们对wasm-bindgen的愿景
该篇文章官方探讨了wasm-bindgen 的细节,以及对未来的设想。
wasm-bindgen的核心是促进javascript和Rust之间使用wasm进行通信。它允许开发者直接使用Rust的结构体、javascript的类、字符串等类型,而不仅仅是wasm支持的整数或浮点数。开发者只需要专注于他的业务。
另外,wasm-bindgen还将支持wasm即将发布的Host Bindings提议,该提议的目标如下:
- 人体工程学 - 允许WebAssembly模块创建,传递,调用和操作JavaScript + DOM对象。
- 速度 - 允许对JS / DOM或其他host调用进行良好的优化。
- 平台一致性 - 允许WebIDL用于标注Wasm导入/导出(通过工具)。
- 增量机制 - 提供方便填充的策略。
这有望解锁更快的dom访问,因为dom api可以在编译为wasm时进行验证,就不需要每次在调用时动态检查了。
wasm-bindgen致力于为javascript生态和Rust crate生态系统建立共享的基础。
- 共享原生的外部导入。
- 共享的ECMAScript全局API,每个javascript环境中可用的全局API都可以通过wasm_bindgen :: js模块获取。当然,这里面有一些体力活,需要人手来共同完成,官方也开了issues来忽悠大家一起完成,并且手把手教了方法,想参与贡献的可以去wasm_bindgen的issues列表中查看。
- 所有的Web API类型、函数和方法都是由WebIDL来指定,目前正在为wasm-bindgen开发一个新的WebIDL前端。新的前端意味着,wasm-bindgen会解析WebIDL并将其转换为wasm-bindgen的AST,再进行后面的过程。
该帖子总结了社区中对Rust语言扩展或改进的第三方crate列表
这些crate多半是针对Rust缺失的特性、推迟的RFC、实验性、hacky技巧之类的。
使用commandspec从shell迁移到Rust
一次用rust编写脚本的深度实践
Rocket 作者、PingCAP等组织的硅谷meetup
topic主题:
- Rust中宏的探讨
- facebook用Rust实现的的Mercurial服务器Mononoke
有在硅谷的朋友可以去参加
机器学习:Rust实现逻辑回归
群友推荐: rust-ios-android
这个库在最新的移动开发环境上都能成功编译 @熊皮皮
也欢迎大家推荐你们用过的或自己开发的库
1
共 0 条评论, 1 页
评论区
写评论还没有评论