前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Rust 2020 路线图

Rust 2020 路线图

作者头像
张汉东
发布2020-04-21 11:30:18
8440
发布2020-04-21 11:30:18
举报
文章被收录于专栏:Rust 编程Rust 编程

Niko 提交了Rust 2020 Roadmap的RFC

Rust 2020 Roadmap 概要

继续为Rust的目标而努力:Rust,一门赋予每个人构建可靠且高效软件能力的语言。

三个主要目标:

  1. 为 Rust 2021 Edition 做准备
  2. 跟进正在进行中的设计和工作
  3. 改善项目的运作、治理和透明度:
    • 提高对计划和设计工作状态的透明度
    • 提升指导,领导力和组织的利用率
    • 使RFC流程设计讨论更富有成效,并且更轻松

为Rust 2021 Edition做准备

Edition机制是为了帮助传达Rust语言的进度,并为总体工作提供一个着力点。我们今年的目标之一,应该是规划出要在下一个Rust Edition中所要进行的改进和变化。如果我们继续使用Rust 2018 Edition开始建立的每三年发布一版的节奏,那么下一版将在2021年发行。

我们从Rust 2018的经验中学到的一件事是,准备的重要性。如果我们希望制作Rust 2021 Edition,我们需要立即进行规划。我们的目标应该是,希望在Rust 2021中进行的任何更改都将在2020年10月之前完成。此处的「完成」意味着可以在Nightly可用。这就给2021年留出了进一步完善工作的时间。

目前还未有正式的关于Edition的决定。但我们希望在2020年10月之前就依赖于该Edition,最终决定就需要在10月份通过RFC决定。

一个Edition可能包含什么内容?我们已经有了一些正在“进行中”的语言特性设计,可能需要对某个Edition进行细微的修改,但下面这份列表绝不是所有需要的改变:

  • 错误处理,可能会引入新的语法形式;
  • 改进trait系统;
  • 对Unsafe代码的改进,可能涉及引入新的语法,例如RFC 2582中提出的&raw 形式。

那么,今年的一个目标就是更详细地充实这些领域,并决定如果有变化,我们希望为2021年的“铁锈”做些什么。关键是要尽早确定和计划我们想要进行的更改,以便在交付之前,围绕这些更改的工具和文档有足够的时间成熟。

请注意,和以往一样,发行新Edition并不意味着旧代码停止编译。

跟进正在进行中的设计和工作

在众多博客文章和团队成员的反馈中突出强调的一个重点就是,Rust有时会在没有完全完成的情况下“卡住”的趋势。多年来,Rust积累了许多“几乎完成”的工作:从语言/库特性到编译器重构,再到社区项目。

我们今年的目标之一是减少积压的“进行中”想法,无论是实施这些想法,还是明确选择拒绝或推迟该想法。这并不意味着我们不应该接受任何新工作,但是我们应该有一个宏观的目标,即,以更少而不是更多的“计划”工作来结束这一年

这里有几个动机。

首先,“进行中”的设计和工作已经包含了最迫切需要的特性和计划。但进一步说,停滞不前的工作可能会让人失去动力和困惑。当一个计划跨越数年,跟踪当前状态并记住所有关键的设计约束就变得越来越困难。这反过来又阻碍了对Rust项目的参与,并使其更难弄清正在发生的事情。

改善项目的运作、治理和透明度

Rust项目在过去几年里在各个方面都有了显著的增长,用户比以往任何时候都多。我们看到越来越多的公司,以及规模更大的公司,开始采用Rust技术。并且,组织和Rust团队也已经成长。这是个好消息!

但这种增长也带来了挑战。我们发现,确保整个组织的沟通越来越困难。找到足够多的人来做我们想做的工作通常是很有挑战性的,这反过来又会导致人们的精力枯竭或离开项目。

因此,我们确定了三个主要的目标:

  1. 投入更多精力来发布更新和文档,以及寻求Inside Rust博客之外更轻量式的方式将状态更新合并到工作流汇总,以此提高对计划和设计工作状态的透明度。
  2. 寻找更多有“领导力”的人两帮助组织工作,以及提升Rust贡献者们(尤其是组织)获得报酬的机会。并且指导那些愿意提供帮助的企业把帮助用到刀刃上。
  3. 长期以来,RFC流程一直是Rust组织的一个重要部分。 记录和讨论我们的设计的过程,通常对改进设计非常有帮助,有时甚至会导致重大变化。 许多其他语言都采用了RFC,并明确以Rust为例。当然,也有足够的证据表明,目前实践中的RFC流程不适用于大规模或有争议的设计。去年,我们投入了大量精力来思考改进流程的技术,而今年,我们需要投入更多的精力来进行实际的更改。从而使得RFC流程设计讨论更富有成效,并且更轻松。

总结

今年的路线图有别于以往。今年是从更宏观的角度来制定路线图,而把细节留给具体的工作组和团队。避免设定精确的目标,而倾向于描述更普适的任务和主题。

这样做的原因有几个:

  • 路线图RFC不是针对特点解决方案做出的决策。这些应该在专门的RFC进行讨论。
  • 我们希望鼓励团队和项目成员思考如何将这些任务最好地应用于他们正在处理的特定问题。

「Q&A」社区里出现高频次问题:

  1. Rust 基金会进展如何?

在Niko最新的博客里描述过相关内容,基金会刚开始建设,估计今年会持续推动完成这件事。建立基金会的目的是为了改善项目治理的目标。

2. Const泛型、异步I/O、cargo features等功能进度如何?

这些都是属于「正在进行中」的工作,具体的细节留给相关团队。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-01-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 觉学社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档