写点什么

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:362164
用户头像

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

关注

评论

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

汉诺塔(递归+ 非递归版)

Five

算法题 8月月更

带你玩转“超大杯”ECS特性及实验踩坑

科技怪咖

转转风控「违禁物品识别」 背后的那些事儿

转转技术团队

人工智能’

张宏江谈AI创业:人工智能亟需工程化,创业者大有可为

硬科技星球

基于DevCloud进行黑白棋实时对战游戏开发实践

科技怪咖

推荐 | 移动开发主流热更新技术

Speedoooo

小程序 APP开发 热更新

买家手册:企业在选择 SBOM 供应商时需要注意什么?

SEAL安全

DevSecOps 开源软件供应链 软件物料清单 SBOM 软件供应链安全

跟我学Python图像处理丨基于灰度三维图的图像顶帽运算和黑帽运算

华为云开发者联盟

人工智能 图像处理 图像 三维

教你如何轻松实现多队伍排队管理【必看】

天天预约

微信小程序 排队 排队工具 #SaaS应用

ARMS助力羽如贸易打造全链路可观测最佳实践

阿里巴巴中间件

阿里云 云原生 可观测 Arms 客户案例

技术分享| 应急指挥调度平台需要这些技术支撑

anyRTC开发者

音视频 快对讲 语音对讲 调度系统 视频对讲

传媒数字化转型思考:小程序是音视频内容的更优载体技术

Speedoooo

小程序 数字化转型 小程序生态 传媒

秒验丨使用简介与应用创建

MobTech袤博科技

android iOS SDK 秒验

火热与争议并行,XDR路在何方?

极盾科技

网络安全 安全 信息安全 数据安全 xdr

程序员常用的IDE工具,你了解哪些?

Speedoooo

小程序 ide 开发者工具 前端开发工具

使用 HTML、CSS 和 JavaScript 的简单模拟时钟

海拥(haiyong.site)

开源 8月月更

重磅发布!阿里云全链路数据湖开发治理解决方案

阿里云大数据AI技术

大数据 阿里云 数据湖 数据分析

极盾·析策,XDR的正确打开方式

极盾科技

网络安全 安全 数据安全 xdr

企业实践|基于软件研运一体化DevOps平台的应用解析

云智慧AIOps社区

DevOps 自动化 敏捷开发 研发管理 代码托管

数字人民币如何影响传统支付?支付厂商数字人民币应用案例征集

易观分析

金融 数字人民币 传统支付

用小程序打造超级App,助力社交电商扩大“留量池”

Speedoooo

小程序 社交电商 超级app 用户留存

SpringBoot进阶(叁):Spring Boot启动过程分析

No Silver Bullet

spring-boot 8月月更

Louvain算法在反作弊上的应用

百度Geek说

大数据 算法

湖南省株洲市有等保测评机构吗?咨询电话多少?

行云管家

网络安全 等保测评 等级测评 株洲

小企业自动化运维管理用什么软件好?有便宜的吗?

行云管家

IT运维 行云管家 自动化运维 小企业

Android进阶(十七)Android 布局

No Silver Bullet

android android布局 8月月更

什么是IP 欺骗以及如何防范?

郑州埃文科技

网络安全 IP

MySql主从同步介绍

京东科技开发者

MySQL 数据库 主从同步

直播系统源码——重视哪些功能的开发?

开源直播系统源码

软件开发 直播系统源码 直播功能

让GitHub炸锅的深入理解MySQL实战手册,竟出自阿里云“藏经阁”

冉然学Java

Java MySQL 高可用 阿里 构架

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