AICon议程上新60%,阿里国际、360智脑、科大讯飞、蔚来汽车分享大模型探索与实践 了解详情
写点什么

Rust 2018 临近:设法从 Rust 2015 过渡

  • 2018-08-18
  • 本文字数:894 字

    阅读完需:约 3 分钟

据 Rust 核心团队报道, Rust 2018(对应 Rust 1.31)的第一个版本将于 2018 年 12 月 6 日准备就绪。从 Rust 2015 首次发布以来,大量新特性合并到一个新的标签下,大大丰富了这门语言。

据 InfoQ 报道,Rust 2018 侧重于提高语言的生产力,就是说,侧重于编译器性能,对许多语言特性进行优化,进一步改进工具、库和文档。新的 Rust 2018 语言特性有的已经出现在 Rust 近日的发布中,有的将会出现在 Rust 1.31 之前的版本中,包括 impl Trait、macros 2.0、SIMD 支持、“非词法作用域生命周期(non-lexical lifetimes)”、async/await 支持及模块改造。

最值得注意的是, Rust 2018 将稍微放宽稳定性保证,从而为可能破坏现有 Rust 2015 代码的语言变更提供支持。例如,Rust 2018 将包含 try 关键字,这可能会与一些代码中的函数或变量名冲突。

为了解决这个问题和其他类似的可能性,帮助开发人员设法从 Rust 2015 过渡到 Rust 2018,Rust 将遵循 C++ 和 Java 的步骤。这有几层含义:

  • Rust 2018 可以选择加入。如果你希望在现有的项目中使用 Rust 2018,那么你可以在项目的 cargo.toml 文件中加入 edition=‘2018’。为了防止版本激活码丢失,Rust 编译器将默认使用 Rust 2015。所有使用 cargo new 新建的项目将默认加入 edition = ‘2018’。
  • 由于 Rust 编译器既支持 Rust 2015,又支持 Rust 2018,所以你可以在同一个项目中组合使用依赖其中任意一个 Rust 版本的依赖项。这让你可以在 Rust 2018 程序中使用 Rust 2015 依赖项,也可以在 Rust 2015 项目中使用 Rust 2018 依赖项。
  • 语言核心将保持不变,就是说,Rust 2018 将只包含表层的破坏性更改,如上面提到的 try 关键词,或者是一些警告转换成了错误,等等。

此外,Rust 2018 将包含一个新工具 cargo fix,这个工具可以帮助开发人员转换现有的代码库,实现代码的逐步过渡,采用 Rust 2018 推荐的新特性和习惯用语。

另外,Rust 核心团队已于近日发布了 Rust 1.28 ,引入了全局分配器,让开发人员可以提供自己的内存分配器,以代替系统分配器; NonZero 数值类型,优化内存;改进错误信息和格式化。

查看英文原文: Rust 2018 is Approaching: Managing the Transition from Rust 2015

2018-08-18 03:361684
用户头像

发布了 1008 篇内容, 共 389.0 次阅读, 收获喜欢 344 次。

关注

评论

发布
暂无评论
发现更多内容

中移链DDC-SDK技术对接全流程(一)

BSN研习社

浅谈 SAP ABAP 系统里的 ALV 输出方式实现

汪子熙

前端开发 SAP abap 9月月更 ALV

MASA Framework 获取配置信息的方法

MASA技术团队

.net MASA Framewrok MASA

聆心智能入选OPPO“微笑提案”TOP10,让有温度的AI技术守护数亿人心理健康

硬科技星球

AOSWAP去中心化交易所系统开发功能介绍

开发微hkkf5566

笔记 | DevOps推动科技管理敏捷转型(文末附PPT)

嘉为蓝鲸

DevOps 运维 敏捷 IT 精益

优秀的产品手册有助于留住你的客户

Baklib

传统单节点网站的Serverless上云

Serverless Devs

数据可视化系列教程|六大组件基础知识

云智慧AIOps社区

大前端 低代码 开源项目 数据可视化 可视化大屏

干货|为什么说开源基金会的选择很关键?(下)

Orillusion

开源 WebGL 元宇宙 webgpu web3d

在数字时代,如何选择企业的知识管理软件

Baklib

SpringCloud 注册中心(Nacos)快速入门

nacos SpringCould 9月月更

了解数字机器人最新发展动向,不要错过华为数字机器人秋季发布会​

王吉伟频道

RPA 机器人流程自动化 智慧政务 机器人开发 华为数字机器人

UI自动化助力业务效率提升

转转技术团队

UI自动化测试

C#/VB.NET 设置Word文档段落缩进

在下毛毛雨

C# .net word文档 段落缩进

高性能对象池实现

C++后台开发

后端开发 高性能服务器 内存池 对象池 C++开发

建木持续集成平台v2.5.4发布

Jianmu

DevOps 持续集成 gitops 持续部署 Gitea

百余位顶级投资人齐聚无锡,DEMO CHINA创新中国峰会即将揭幕

创业邦

万物皆可集成系列:低代码如何不成为数据孤岛

葡萄城技术团队

低代码 数据孤岛 集成

极狐GitLab Helm Chart 已上线,玩转云原生极狐GitLab!

极狐GitLab

DevOps gitlab 云原生 Helm Kubernetes, 云原生, eBPF

2022世界人工智能大会•腾讯“智变未来”论坛:聚焦产业升级,数字赋能未来

科技热闻

堡垒机有录像吗?好用吗?有什么作用?

行云管家

网络安全 企业 数据安全 堡垒机 录像

当你的老板站在你背后,看你处理故障......

嘉为蓝鲸

运维 IT 故障 上班

盘点适合中小企业的文档管理工具

Baklib

设计模式的艺术 第二十一章备忘录设计模式练习(设计一款RPG网游,为了给玩家提供更多方便,在游戏过程中可以设置一个恢复点,用于保存当前的游戏场景。如果在后续游戏过程中玩家角色“不幸牺牲”,可以返回到先前保存的场景,从所设恢复点开始重新游戏)

代廉洁

设计模式的艺术

看了深入Java虚拟机:JVMG1GC的算法与实现文档,我悟了

程序知音

Java JVM 垃圾回收 java架构 后端技术

使用FeatureAbility模块启动其他Ability

白晓明

OpenHarmony应用开发 FeatureAbility

搭建自己的以图搜图系统 (一):10 行代码搞定以图搜图

Zilliz

Python 机器学习 深度学习 相似度分析 以图搜图

Apache Kyuubi 在小米大数据平台的应用实践

网易数帆

Java hive Apache Spark Thrift kerberos

2022 云原生编程挑战赛启动!看导师如何拆解边缘容器赛题?

阿里巴巴中间件

阿里云 云原生编程挑战赛

重拾面向对象软件设计

阿里巴巴中间件

阿里云 技术 中间件 技术代码

Rust 2018临近:设法从Rust 2015过渡_DevOps & 平台工程_Sergio De Simone_InfoQ精选文章