微软工程师展望Rust 2023:重写编译器、解决管理问题 | 程序师 - 程序员、编程语言、软件开发、编程技术-迪欧吧

Nick Cameron 是就职于微软负责 Rust 开发的首席工程师,此前是 Rust 核心开发团队的成员。他在 3 个月前颁发文章:“Rust 面临的十大挑战”,称这是 Rust 应该在 2023 年要解决的问题。

上周他又颁发了文章:“Rust in 2023”,表达对 Rust 和 Rust 社区在 2023 年的展望,比如优先要做的工作,以及 Rust 值得着手改进的标的目的。


两件重要大事

解决 Rust 社区的治理和领导问题

Nick Cameron 认为,目前最重要的是解决 Rust 社区的治理和领导问题。原因在于这些问题阻碍了许多潜在工作,并且持续时间越长,会导致项目累积的 “治理债” 越多。更令人尴尬的是,在 Rust 核心团队内讧一年多后,仍没有关于新领导团队的建议。

而对于 Rust 的治理,Nick Cameron 认为需要更新 RFC 流程,以及重新审视团队和工作组的组织架构。目前由于缺少领导团队完成当前变化,这些工作都停滞了。

此外,他认为 Rust 要重写审视 “不变而不竭滞” 的战略。避免停滞非常重要,Rust 不能停止创新,但也不能无限制地任由其发展。因为语言的复杂性和规模是有代价的,这与 Rust 让人们编写可靠和高性能软件的使命不一致(他认为需要让编程语言更简单、更小、更易于使用)。仅仅保持向后兼容性并不味着实现了不变性。

Nick 表示本身有点担心 Rust 正在讨论或设计的新功能的数量,并且目前也没有关于 Rust 发展标的目的的策略。

重写编译器

Nick 认为,Rust 目前的架构已经难以支持实现增量编译、并行编译等功能。重新开始则可以使用上更多的技术,团队可以通过这种机会认真优化编译时间,简化未来的开发难度。再结合 Rust 2.0,他们可以减少由于向后兼容而导致的技术债,并改进语言,实现更快的编译。

其他值得着手改进的地方

Cargo

Cargo(和 crates.io)是非常重要的工具,并且处于很多重要事情的关键路径上(供应链安全、常规安全、与其他语言的集成、与其他构建系统的集成、构建时间……),但目前对它的资源投入严重不足,几乎不成能取得进展(需要明确的是,目前的团队不该该受到责备,他们在恶劣的条件下做得很好,只是由于这是一项艰苦的工作)。

Nick 提出了解决这个问题的方案:向 Cargo 和 crates.io 团队中任何愿意接手它的人提供资金,集中指导潜在的新团队成员(如果这些人不存在,然后说服一些支持 Rust 的大公司,让他们每家找一个人把 1/4 的工作时间花在 Cargo 上),然后与这些成员一起快速扩大团队(即使他们对代码库只有部分了解),并再次开始鼓励贡献和新功能。

异步

目前异步编程的相关工作进展得很顺利,Nick 称希望事情在 2023 年开始好转并取得实实在在的成果。关于这一点,他对本身的缓慢进展感到有些沮丧,遗憾的是,大多数异步工作组都在忙着其他事情。不外事情正在发生变化,他认为,对于异步来说,2023 年将是令人兴奋的一年。它应该仍然是 Rust 的一个高度优先事项。

不安全编程

不安全代码指南工作组及其他一些人在定义 Rust 内存模型方面做了很多工作,并为不安全编程提供了工具和指南。Nick 认为,对 Rust 来说,进一步推进这方面的工作非常重要。因为安全性是 Rust 的主要卖点,为了让不安全编程变得更安全、更简单,我们做得越多越好。

OSC开源社区

未经允许不得转载:迪欧吧_技术交流_资源分享_热点资讯_免费VPS空间 » 微软工程师展望Rust 2023:重写编译器、解决管理问题 | 程序师 - 程序员、编程语言、软件开发、编程技术-迪欧吧