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

栏目: 编程语言 · Rust · 发布时间: 6年前

内容简介:据Rust核心团队报道,据InfoQ报道,Rust 2018侧重于提高语言的生产力,就是说,侧重于编译器性能,对许多语言特性进行优化,进一步改进工具、库和文档。新的Rust 2018语言特性有的已经出现在Rust近日的发布中,有的将会出现在Rust 1.31之前的版本中,包括impl Trait、macros 2.0、SIMD支持、“非词法作用域生命周期(non-lexical lifetimes)”、async/await支持及模块改造。最值得注意的是,Rust 2018将稍微放宽稳定性保证,从而为可能

据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-10-20 / 58.00

易到用车创始人/顺为资本投资合伙人周航,首度复盘20年创业经历,全方位坦陈创业得与失。这不是一本创业成功手册,却是思想的一次出走。 20年创业经历的咀嚼与反思,从战略、品牌、竞争,到流量、领导力、团队管理等,多角度多维度的重新认知,如李开复所言,“都是真刀真枪打出来的经验,值得每一位创业者多读几遍,吸收内化”。 雷军、李开复、徐小平作序,梁建章、张志东、曾鸣推荐。一起来看看 《重新理解创业》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具