WASM·技术趋势

7d1a19e0670243c94463541639e55142.gif

今天看到一则故事,一名程序员@Andreas Kling 辞掉工作,全职开发操作系统。正如其签名档一样:I like computers!

对技术的热爱已经超越了工作本身,完全是兴趣所在855541bef088ddeed308c99b6ecdba3f.png

6e8fc20042916670a2e6680c383c7f89.png

shadow

34c18003f92786ad4934dfa53c3c842a.png

Andreas

Kling

I quit my job to focus on SerenityOS full time

68cbfecc6acb3e299f4369de3f16d101.gif

ace

79d43c4aecef04d8dc56d3c23a619720.png作为无边界学习爱好者,我们需要时刻留意技术的发展趋势~~

4adc932a10362562394b2faaf8855ba3.png

7913470a74a76b76a159efe647723941.gif

c042ded8355c469edcb24020dc9a5d7a.png

Adrian

Mouat

hi~大家好,我是Container Solutions的Chief Scientist,给大家分享一些关于云计算未来的观点:

WASM将无所不在:编译、部署、IoT、插件生态系统;

Rust 编程语言的将流行,未来几年有望在 RedMonk 排行榜上超过 Go;

有可能会出现百亿级、利用智能合约奴役全人类的 AI 公司;

AI 的发展有可能在多个行业中造成大规模的破坏,会导致大量工作岗位消失(如卡车司机);

GPT3 类的助手将广泛被使用,艺术家、作曲家、作家、程序员、设计师都会使用,AI帮助我们高效地自动完成所有事情;

有点意思,今天我重点解读下WASM~~

62ca694c9d84e4a4720e40f0bb722000.png

shadow

WebAssembly

2021.9.22

WASM

cadfc3af8543ae30125e499b9fe1bd72.png

简称 Wasm,是一种为栈式虚拟机设计的二进制指令集。Wasm 被设计为可供类似C/C++/Rust等高级语言的平台编译目标,最初设计目的是解决 JavaScript 的性能问题。webassembly.org

#增强web应用

WebAssembly是一种新的编码方式,可以在现代的网络浏览器中运行,它是一种低级的类汇编语言,一种二进制格式,可以接近原生的性能运行。

WASM 的启动时间比 V8 快,并且能够在具有少量内存和存储(可能低于 1GB 内存和 50MB 存储)的物联网设备上运行。

对于web而言,WebAssembly具有巨大的意义:使得以各种语言编写的代码都可以以接近原生的速度在Web中运行。以前无法以此方式运行的客户端软件都将可以运行在Web中。列举两个案例:

2e540a78c0350f1c85bd2dae6fb7c1c5.png

TensorFlow.js

官方团队实现了在 WebAssembly 中使用 SIMD 和多线程来增强 TensorFlow.js

c262df4e953c3bdfa33a4b9535a63469.png

FFMPEG

著名的音视频库。使用C写的 FFMPEG 导出了 WebAssembly 格式,从而使 FFMPEG 可以在浏览器中运行。

#走出浏览器,进入云端

最初WebAssembly仅支持在浏览器内部使用。近些年,已经逐步扩展,在浏览器之外,通过WASI(系统接口)来实现,从而在服务器也可以使用WASM。

引用Docker联合创始人Solomon Hykes(2019年3月27日)在宣布 WASI 时发推文所说的一句感想。

ed321bdddc504e28819103be263630ae.png

Solomon

Hykes

如果2008年存在WASM+WASI,我们就不需要创建Docker。

可以大胆地说,服务器上的 Webassembly 是计算的未来。

c0e4159aa7686167081fcfce50fc93e6.png

shadow

#跨语言支持

WebAssembly可以从以下语言编译而成:C/C++、Rust、AssemblyScript、C#、F#、Go、Kotlin、Swift、D、Pascal、Zig、Grain。

679d8e436884c488f78904222f6a9ce7.png

无界

引用我超喜欢程序猿的一句diss用语:

Talk is cheap ,    
show me the code

个人比较推荐学习rust来上手wasm ,@无界 看完以下的项目,你会喜欢上rust吗?

ba542638765d19d87f613a139dff3fda.png

shadow

# Rust

这是知乎上的一个问题:写wasm项目选C++还是Rust?

一般我会查找awesome来全面了解某个topic,比如awesome-rust。经过一番查找,挑选一些rust非常好玩的开源项目分享给大家~~

Veloren

使用Rust写的多人RPG游戏

It is inspired by games such as Cube World, Legend of Zelda: Breath of the Wild, Dwarf Fortress and Minecraft.

772fe281b94b36beb2e91a446bb7a6d4.gif

veloren.net

citybound

这是一个城市建设游戏,使用微观模型生动地模拟城市中数百万人相互作用产生的有机体。

A city building game that uses microscopic models to vividly simulate the organism of a city arising from the interactions of millions of individuals.

16687c1950e3dc314dafa663c42a37c5.gif

67f60d2807af77b70730bf3860978a15.png

aeplay.org/citybound

valora

rust开发的生成艺术代码库

A brush for generative fine art.

09abfbc128006cc43fea8f78de38aa19.png

github.com/turnage/valora

Linfa

机器学习库,这个我非常喜欢

A comprehensive toolkit for Statistical Learning in Rust.

4ec33ac77d60950b459911c7532a82cb.png

rust-ml.github.io/linfa

AmethystGame Engine

使用rust写的游戏引擎

Data-driven game engine written in Rust

b31d5ffadaa28a0184b9ebeedd8c661e.png

amethyst.rs

bevy

另一款游戏引擎

A refreshingly simple data-driven game engine built in Rust

Free and Open Source Forever!

e265dd323c2ed507daa5e5eddfd60242.png

bevyengine.org

github.com/bevyengine/bevy

img_hash

感知哈希算法(perceptual hash algorithm),它的作用是对每张图像生成一个“指纹”(fingerprint)字符串,然后比较不同图像的指纹。结果越接近,就说明图像越相似。

A Rust library for calculating perceptual hash values of images

github.com/abonander/img_hash

tesseract.js

著名的OCR库,通过rust实现了js版本~

Pure Javascript OCR for more than 100 Languages

adfdfa938740b264bc24b9f04d880ddd.png

github.com/naptha/tesseract.js

4e3a8e5a70fe22e30fabf6442c317a75.png

opus

感谢今天的#趋势 分享
🤖✖️❤️

我来总结下本次分享的重点:

- 增强web应用

- wasm走出浏览器,进入云端

- 跨语言支持,重点推荐学习rust


如果对以上话题感兴趣

👨🏼‍🎤👩🏻👨🏻‍💼👤🦸🏻🧑🏻‍🎤

欢迎加入社群,当然还有设计方向的活动:

超越“门票”的门票-设计挑战赛

关注后回复:群聊   ⤵️

43093d82d3c542e02d334c938be19e0d.gif

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值