免费下载!由 O’Reilly 出版的《NGINX 完全指南》中文版已正式上线 了解详情
写点什么

RustConf 2021: 迈向广泛应用的征程

Yijun Yu,王齐林

  • 2021-09-27
  • 本文字数:1740 字

    阅读完需:约 6 分钟

RustConf 2021: 迈向广泛应用的征程

北京时间 2021 年 9 月 15 日,一年一度的 Rust 语言官方大会RustConf 2021圆满结束。


由于疫情的原因,今年的大会和去年一样采取线上的方式举行,组织形式也与去年大同小异。然而,在这看似不变背后,隐藏着 Rust 社区过去一年的巨大成就:Rust基金会正式成立,谷歌、华为、AWS、Mozilla、微软成为创始白金会员,Rust 社区的可持续发展迈出了极为重要的一步;三年一度的 Rust 2021 Edition 基本准备就绪,将在 10 月份正式发布;越来越多的企业开始在生产环境中使用 Rust 语言等等。具体到本次线上会议的参与度上,创纪录的 10 家企业选择成为大会最高级别的赞助商、多达 2000 人参与了会议互动同样反应了这一点。对于本次大会所传递出来的一些关键信息,华为可信编程语言首席专家俞一峻(Yijun Yu)老师进行了解读:


会议的开场演讲由社区大牛 Niko Matsakis 和 Mara Bos 给出。首先,Niko Matsakis代表语言团队(Lang Team)进行了进展同步。他在演讲中表示,2021 年对 Rust 来说是非常激动人心的一年,在关键系统中的采用和可持续发展方面有了显著的进展,Rust 甚至被考虑用于 Linux 内核。在此基础上,尽管当前的 Rust 在性能方面已经接近 C 语言的水平、但在易用性方面还需要向脚本语言看齐。比如,增加 Async/Await 这个异步的语言特性并不难,难的在于如何让这个增加的特性对语法引入最小的修改。做到这一点,才能让 Rust 的未来发展得更好。另一方面,虽然 Rust 已经长期位列 Stack Overflow 最受喜爱的编程语言第一,然而在流行程度上还有很大的提升空间。对此,Niko 提出未来的目标是让新用户在 6 周甚至更短的时间内从 Rust 中获得生产力,为了朝这个方向努力,除了需要保持当前对可靠性、性能、简单易用这三个方面的关注外,还需要强化“全产品思维(Whole product thinking)”,在语言本身和标准库之外丰富学习资料与工具,构建一个丰富、稳定的 Rust 生态系统。


作为耕耘 Rust 社区多年的专家,Guillaume Gomez 也认为,在语法和文档适配方面 Rust 还可以做得更好。后续 Lily Mara 的有关不要过度优化演讲中,同样回应了这个目标:为了更好地普及 Rust,哪怕在不重要的地方牺牲一点性能,简化 Rust 的一些特性也是可取的。掌握了更多的语言特性以后,这些性能的损失可以很容易补回来。


接下来,Mara Bos代表库团队(Libs Team)同步了进展,从语言特性本身发展的视角看,Mara 介绍了一个很有代表性的叙事:Rust 标准库中已经基于特定操作系统(pthreads,win32)初步实现了 mutex, 但是操作系统中的这些 API 是针对 C 的用例设计的,还不能直接映射到 Rust 的一般用例上。如果要在 Rust 上绕过这些困难实现 mutex 需要昂贵的 boxing 方式。Parking lot是华为 Rust 技术专家 Amanieu d'Antras 在 2018 年发起的针对 Rust 的场景实现的高性能 mutex 库。可是在标准库中引入 parking lot 在社区引起了经年的讨论,仍然无法彻底解决。虽然在这个过程中,Rust 和 Parking lot 都分别得到了很好的改进和发展,但是始终无法如愿把两者结合。在 Mara 的领导下,这几个月 Rust 社区采取了化整为零的策略,逐一排除这个跨平台同步互斥特性的障碍,获得了重大进展:比如让微软配合修改了操作系统 API 文档规约,间接地起到了整合操作系统发展的作用,重新拾起了 Rust 社区整合 parking lot 的信心。同时从今年开始,库团队会分为两个专业团队,一个专注于 Library API 的维护,另一个专注于 Library 核心本身的发展。上述故事表明,在 Rust 语言发展到当今的成熟度下,对于 Parking Lot 这样的硬骨头,库团队也能通过逐层分解,小步前进的方式解决。可以预见的是,在未来会有更多的库特性(比如 SIMD 集成到 Rust 语言的标准库中来,为 Rust 用户的使用提供更多的便利。


除了上述主题演讲,本次的 Rustconf 大会还有 来自 Twitter 的Brian Martin介绍的用 Rust 重写缓存框架 Pelikan 的经历、社区开发者Hugo Peixoto分享的用 Rust 开发宝可梦卡识别程序、Luke Westby分享的利用 Rust 开发浏览器拓展来删除页面部分区域使自己“离线”等有趣的话题。最后,来自微软的Nell Shamrell-Harrington介绍了 Rust 社区广受好评的周报“This Week in Rust”发布七年以来背后的一些有意思的洞察,展现出 Rust 爱好者(Rustaceans)们互帮互助的良好习惯。总的来说,尽管受到疫情的影响,RustConf 2021 仍然一如既往的展现出了演讲人背景的多样性、议题的趣味性和活跃的气氛,Rust 未来可期。

2021-09-27 14:312885

评论 1 条评论

发布
用户头像
貌似没哪个语言受到这么多大公司的重点投资和关注,Rust前景很好啊
2021-09-27 22:18
回复
没有更多了
发现更多内容

前端通讯协议大比拼:WebSockets和HTTP

devpoint

HTTP websocket HTTP2.0 7月日更

基础SQL的实现

卢卡多多

7月日更

你也许连删库跑路都不会

喵叔

7月日更

数据中台发展史

escray

学习 极客时间 7月日更 数据中台实战课

Linux之chgrp命令

入门小站

Linux

在线SVG在线编辑器

入门小站

Linux

【LeetCode】在排序数组中查找数字 Java题解

Albert

算法 LeetCode 7月日更

并发操作详解:Goroutines 和 Channels 的声明与使用

微客鸟窝

Go 语言 go并发

如何在 Discourse 中配置使用 GitHub 登录和创建用户

HoneyMoose

【大数据面试之对线面试官】MapReduce/HDFS/YARN面试题70连击

王知无

ClickHouse大数据领域企业级应用实践和探索总结

王知无

Vue进阶(幺陆贰):vue render函数介绍

No Silver Bullet

Vue 7月日更 render

网络攻防学习笔记 Day75

穿过生命散发芬芳

网络攻防 7月日更

B站崩了,拉垮了豆瓣?程序员不要怕,Alibaba架构师教你如何“预防”

Java架构师迁哥

手写冒泡排序和选择排序算法

实力程序员

Mysql,RedisCluster,Kafka,Mongo笔记分享

Arvin

安装

模块二作业

江南巴飞特

推荐大家一个阅读全球计算机论文的好RP

奔着腾讯去

Apache Spark结构化API(三)

数据与智能

spark API RDD

【Flutter 专题】85 Flutter Attach 调试 Flutter Code

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 7月日更

MapReduce的参数优化

大数据技术指南

7月日更

Redis - Cluster - gossip&故障转移

旺仔大菜包

redis cluster

傻眼了,我粗略造了一个命令执行的绕过方法居然被同事嫖走了

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞分析

Kubernetes-技术专题-Spring Boot 2.0和 Docker 的微服务快速指南

洛神灬殇

容器 k8s 7月日更

“此苹果非彼苹果”看意图识别的那些事儿

百度大脑

人工智能 飞桨 数据抽取

Ansible Playbook - 03

耳东@Erdong

ansible 7月日更 ansible Playbook

自建开发工具系列-Webkit内存动量监控UI(七)

Tim

Script tsconfig

到底是先更新数据库还是先更新缓存?

冰河

数据库 缓存 系统架构 分布式系统 缓存一致性

Rust从0到1-并发-线程间消息传递

rust 并发 channel 消息传递 Message Passing

浪潮位居全球区块链企业前十、中国前三

浪潮云

Vue进阶(幺肆拐):利用Vue中keep-alive快速实现页面缓存

No Silver Bullet

Vue 7月日更 keep-alive

RustConf 2021: 迈向广泛应用的征程_语言 & 开发_InfoQ精选文章