当前位置: 首页 > news >正文

一些关于Rust在2019年的思考

每年,我们都会要求社区撰写有关他们希望在Rust的明年路线图中看到的内容的博客文章。 A call for Rust 2019 Roadmap blog posts这是我在2019年的Rust帖子。

Rust 2021: 成熟

今年也有点特别; 在2018年,我们对Rust推出了大约三年的版本时间表。 所以现在不仅是思考2019年的好时机,而且也是2020年和2021年的时候。 Rust在2015年的一些思考是关于“稳定性”的。 Rust在2018年的一些思考是关于“生产力”的。我希望Rust在2021年的一些思考能够是关于“成熟”的。

为了实现这一目标,这是我们在2019年所需要的。

No new features(新特性,但不是新事物)

Emphasis on “new” here. What do I mean by this? Well, there are a few features that are in the pipeline that I do think should land:
这里强调“新”。 这是什么意思? 好吧,我认为应该落地一些关于 pipeline 的功能:

async/await
GATs
const generics

And possibly(可能的特性)

Specialization

这些功能都不是新的; 我们已经有了他们的基本设计。 这些特征也具有重要意义和基础性; 我们需要 sync/await(或者GATs)来建立一个伟大的网络编程体系,我们需要const、泛型来获得一个优秀的数值系统。

但那之后呢? 如果可以的话,我更愿意我们受限在2020年或某一年,在这之前暂停主要功能,

我们已经到了一个甜蜜期。 我们总是说Rust 1.0是稳定的而不是完整的。 我想我们正在快速接近完整。

也就是说,我不认为语言团队应该解散; 我认为他们的工作应该过渡到详细说明我们已有的东西。 我不确定我们是否可以在2019年完成 reference 的编写(稍后会详细介绍),但我希望它能够更进一步。 这只能在语言团队的帮助下进行,他们只有在有时间的情况下才能进行这项工作。

优化RFC(Request For Comments征求修正意见书)流程

RFC流程需要重新进行设计。 Niko在6月份写了一篇很棒的帖子,我认为这真的非常非常重要。 我想在RFC上提出这个建议,所以如果你有兴趣,我们应该谈谈。

Niko已经提出了案例,并提出了一些基础,所以我不会说更多。

减少团队债务

考虑到我对withoutboats博客的文章《Organizational Debt》所说的所有内容的认可。 我不能说得比它更好,所以我会把它留在这。

解决文档的可持续性问题

今年对于文档团队来说是糟糕的一年。 这本书出货了,这很棒。 我们有一些人参与 reference的编写,他们的工作是惊人的。 一些其他文档编写者继续研究rustdoc,这很重要。

但是,我们想要做编写更多文档的目标从未实现过。 例如,从未没有为主要的生态系统 crates 做出贡献、手册没有完成、 Rust by Example仍然萎靡不振。 标准库还不够友好。

我们只是没有让人们做到这一点。 我们已经尝试过,但没有任何效果。 这可能是根本无法修复的,毕竟大多数程序员都不喜欢编写文档。 但我也不想放弃它。 我不知道该怎么做,但我知道这是一个主要问题。

总而言之

还有很多工作要做,我很高兴能做到这份工作。 我认为Rust是一个很好的东西,通过一些工作,我们可以让Rust在一年的时间里变得更加令人振奋。

相关文章:

  • 通信类
  • 力扣(LeetCode)56
  • mybatis-plus 3.1.0 发布,划重点一大波升级
  • JS里的Array
  • IDEA 插件开发入门教程
  • python人工智能机器人工具书籍: Python Robotics Projects - 2018
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • ES10 特性的完整指南
  • BZOJ2744:[HEOI2012]朋友圈(最大团,乱搞)
  • 突破自己的技术思维
  • Javascript编码规范
  • 软件开发学习的5大技巧,你知道吗?
  • Linux快速复制或删除大量小文件
  • c#用winform开发一个简易双色球项目
  • 微信小程序设置上一页数据
  • 2018一半小结一波
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • Android系统模拟器绘制实现概述
  • Angular Elements 及其运作原理
  • conda常用的命令
  • eclipse的离线汉化
  • Facebook AccountKit 接入的坑点
  • iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  • Laravel 菜鸟晋级之路
  • python 学习笔记 - Queue Pipes,进程间通讯
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 创建一个Struts2项目maven 方式
  • 区块链共识机制优缺点对比都是什么
  • 入门级的git使用指北
  • 阿里云重庆大学大数据训练营落地分享
  • ​​​​​​​Installing ROS on the Raspberry Pi
  • ​力扣解法汇总946-验证栈序列
  • ​云纳万物 · 数皆有言|2021 七牛云战略发布会启幕,邀您赴约
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • $ is not function   和JQUERY 命名 冲突的解说 Jquer问题 (
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (python)数据结构---字典
  • (翻译)terry crowley: 写给程序员
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (附源码)计算机毕业设计SSM智能化管理的仓库管理
  • (九十四)函数和二维数组
  • (算法)求1到1亿间的质数或素数
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (转) Android中ViewStub组件使用
  • (转) RFS+AutoItLibrary测试web对话框
  • (转)详解PHP处理密码的几种方式
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • .Net Core缓存组件(MemoryCache)源码解析
  • .NET Core跨平台微服务学习资源
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .net refrector
  • .NET 发展历程
  • .NET 应用启用与禁用自动生成绑定重定向 (bindingRedirect),解决不同版本 dll 的依赖问题