Rust 一周年

2016 年 5 月 16 日 · Aaron Turon

Rust 是一门为您提供

它是一门用来编写高度可靠、极速软件的语言——并且在编写过程中充满乐趣。

而昨天,正是 Rust 满一周年。

Rust 的数字表现

在过去的 365 天里发生了很多事情

  • 702 位贡献者向核心仓库提交了 11,894 个提交
  • 88 个 RFCs 被合并;
  • 引入了 18 个编译器目标平台;
  • 发布了 9 个版本;
  • 兑现了 1 年的稳定性承诺

在今年的 平均每周,Rust 社区会合并两个 RFC 并发布 53 个全新的crate。没有一天没有至少一个全新的 Rust 库发布到中央包管理器。在今年的 Stack Overflow 调查中,Rust 更是荣登“最受喜爱的语言”榜首。

说到数字:我们最近启动了一项自己的调查,无论您是 Rust 的老手,还是从未接触过 Rust,都希望听到您的声音。

有一个方面,我们的数字还没有达到预期:社区多样性。我们一直在进行本地的推广工作,但 Rust 社区团队很快将启动一项协调一致的全球性工作,效仿Bridge模式(例如 RailsBridge)。如果您想参与其中,或者对推广有其他想法,请告知社区团队

Rust 的生产实践

今年有更多公司选择信赖 Rust。每个公司都有自己的故事,但有两个特别引人注目。

首先是 Dropbox。在过去的几年里,该公司一直在秘密地进行一项工作,从 AWS 迁移到自己的基础设施。这项工作现已完成,其中包括开发定制硬件以及驱动它的软件。虽然 Dropbox 的大部分后端基础设施历来都是用 Go 编写的,但对于某些关键组件而言,内存占用和缺乏控制阻碍了他们实现服务器利用率的目标。他们用 Rust 重写了这些组件。用该项目首席工程师 Jamie Turner 的话说,“Rust 的优势很多:真正强大的抽象,没有空指针,没有段错误,没有内存泄漏,同时拥有 C 语言般的性能和内存控制能力。”

其次是 Mozilla。他们长期以来一直在用 Rust 开发研究性浏览器引擎 Servo,但他们首个 生产环境 的 Rust 代码是通过另一种方式发布的:Firefox。在 Firefox 45 中,静悄悄地,Rust 代码的mp4 元数据解析功能推送给了 OSX 和 64 位 Linux 用户;它将在 48 版本中支持 Windows。这段代码目前正在测试模式下运行,其结果与旧的 C++ 库进行对比:在报告的 1 亿次执行中,正确率达到了 100%。但这只是冰山一角:在为Rust 集成打下大量基础后,Firefox 准备引入大量新的 Rust 代码,包括来自 Servo 的组件——而且不只是在测试模式下。

我们从许多其他将 Rust 应用于生产环境的公司那里听到了类似的故事:Rust 帮助一个团队发挥出超越其本身实力的能量。它提供了与传统系统语言相同的许多优势,同时更易于上手、更安全,并且通常更高效。

这只是 Rust 在生产实践中的几个故事,但我们非常乐意听到您的故事

改进的 Rust

当然,Rust 本身也没有停下脚步。第一年的重点是发展和完善其生态系统和工具

  • 平台和目标。Rust 的内存占用与 C 语言相差无几,这使得它非常适合在各种地方使用。在过去的一年里,Rust 获得了直接使用 Windows 上原生 MSVC 工具链的能力,可以针对 musl(从而创建可在任何 Linux 发行版上使用的、零依赖的二进制文件),可以针对 Android 和 ARM 设备,以及更多平台。新的 rustup 工具使得管理和编译到这些各种目标变得轻而易举。从 Rust 1.6 开始,您可以使用 Rust 而不使用其完整的标准库,仅限于一个不需要任何操作系统服务的核心库(因此适用于用 Rust 编写操作系统)。最后,有越来越多的库用于将 Rust 代码嵌入到其他环境中,例如 node.jsRubyGo
  • 核心语言。今年我们故意缩短了一个列表:核心语言的增长。虽然我们有一些重要的功能正在规划中(如改进的错误处理更灵活的借用规则特化),但总的来说,Rust 用户对核心语言感到满意,并且更希望社区专注于生态系统和工具。

关于 Rust 世界中已经发生和即将发生的事情,还有很多话要说——在接下来的几个月里,我们将利用这个博客来讲述它们。

Rust 社区

事实证明,人们喜欢聚在一起讨论 Rust。去年八月,我们举办了售罄的 RustCamp,并在 2016 年有几场即将举行的活动

  • 2016 年 9 月 9-10 日:首届 RustConf,在美国俄勒冈州波特兰举行;
  • 2016 年 9 月 17 日:RustFest,欧洲社区会议,在德国柏林举行;
  • 2016 年 10 月 27-18 日:Rust Belt Rust,一场 Rust 会议,在美国宾夕法尼亚州匹兹堡举行;
  • 全球 71 个 Rust 相关线下聚会小组。

这并不令人惊讶。从个人角度来看,与 Rust 一起工作最好的部分是它的社区。很难确切地解释成为这个群体一员的感觉,但有两件事很突出。第一,它纯粹的 活力:每周都发生如此多的事情,以至于 Rust 本周动态对于任何希望跟上进度的人来说都是一个至关重要的资源。第二,它 受欢迎的精神。Rust 的核心理念是赋能——你可以无畏地编写安全、低级别的系统代码——这也在社区中得到了体现。我们都在这里学习如何成为更好的程序员,并在此过程中互相支持。

现在是开始学习 Rust 的最佳时机,无论是参加本地的线下聚会、在用户论坛打招呼、观看讲座,还是阅读书籍。无论您以何种方式进入,我们都欢迎您。

Rust,生日快乐!