从 2017 年开始,Rust 遵循开放路线图流程来设定我们这一年的目标。该流程与调查和生产用户拓展相协调,以确保我们的目标与 Rust 用户需求保持一致。最终在社区范围内的讨论中达到高潮,并最终形成一份 RFC,阐述了愿景。
今年,首要的主题是生产力,特别是对于 Rust 的早期用户。从工具到库,再到文档和核心语言,我们都希望让使用 Rust 完成工作变得更容易。
专注于生产力可能看起来与 Rust 的其他一些目标不一致。毕竟,Rust 一直专注于可靠性和性能,并且很容易想象,实现这些目标会在其他方面做出妥协——例如学习曲线或开发人员的生产力。“与借用检查器作斗争”是初出茅庐的 Rustaceans 的固有仪式吗?消除琐碎的问题和小复杂度是否意味着掩盖了安全漏洞或性能瓶颈?
我们在 Rust 中的方法一直是围绕权衡来弯曲曲线,正如我们在这个博客中讨论的各种支柱所体现的那样
在核心语言中,我们有时能够利用 Rust 的所有权模型等机制来简化功能的使用。例如,Rust 中的闭包,与 C++ 中的闭包不同,不需要显式的“捕获子句”;Rust 的所有权跟踪意味着我们可以自动推断是将数据移动还是借用到闭包中,而不会牺牲可靠性或性能。我们还一直在努力通过改进编译器的错误消息来使该语言更容易学习。并且Cargo 是早期关注生产力的一个例子,它仅增强了使用 Rust 进行系统编程的能力,允许操作系统 项目轻松构建和利用共享库的生态系统。在这方面我们还可以做更多的事情!
简而言之,生产力应该是 Rust 的核心价值观,我们应该创造性地努力改进它,同时保留 Rust 的其他核心价值观。到 2017 年底,我们希望赢得这个口号
- Rust:快速、可靠、高效——三者兼得。
路线图
考虑到这个框架,这里是 Rust 2017 年的愿景概要。每个语句都链接到一个相应的跟踪器,其中包含更多详细信息
-
Rust 应该具有更低的学习曲线。计划包括一本新书,收集示例和模式,改进错误,改进核心语言和构建 IDE。
-
Rust 应该提供可靠但基本的 IDE 体验。计划的重点是Rust 语言服务。
-
Rust 应该提供对高质量 crates 的轻松访问。计划包括crate 类别,crate 排名,开放式测试和基准测试框架,新的 API 和文档指南,以及不安全代码指南。
-
Rust 应该为编写健壮、高规模的服务器做好充分准备。计划主要集中在用于异步 I/O 的 Tokio 项目,以及潜在的async/await 表示法。
-
Rust 应该为基本任务提供 1.0 级别的 crates。目前正在制定计划,将库团队和社区的重点放在一些重要的现有 crates 上,以帮助它们在今年年底之前达到 1.0 质量。
-
Rust 应该轻松集成到大型构建系统中。计划包括与采用 Rust 的大型公司合作,以了解如何最好地装备 Cargo 以简化流程。
-
Rust 社区应该在各个层级提供指导。计划包括 RustBridge 项目和新的团队指导。
除了这些主要目标外,我们还重点介绍了两个我们想要探索的领域,但最终结果尚不明确
各个 Rust 子团队正在积极开展与这些目标相关的项目。您可以通过观看和评论 路线图跟踪器来跟踪进度或参与其中。路线图的完整详细基本原理在RFC 中。
随着一年的进展,预计将会有更多博客文章宣布与路线图相关的计划和里程碑。在年底左右,我们将发布一份回顾,汇总这一年的进展,并提供当前 Rust 状态的指南。
同时,请参与进来!我们今年有宏伟的目标,我们需要尽可能多的帮助。