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

Rust2018版本将于2018年12月6日发布,该版本专注于提升语言生产力,包括编译器性能、语言特性的优化、工具、库和文档的改进。新特性包括impl Trait、macros2.0、SIMD支持等,并且Rust2018将放宽稳定性保证以支持潜在破坏性的语言变更。为了帮助开发者从Rust2015平滑过渡到Rust2018,提供了edition='2018'选项以及cargofix工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

据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'。\\t
  • 由于Rust编译器既支持Rust 2015,又支持Rust 2018,所以你可以在同一个项目中组合使用依赖其中任意一个Rust版本的依赖项。这让你可以在Rust 2018程序中使用Rust 2015依赖项,也可以在Rust 2015项目中使用Rust 2018依赖项。\\t
  • 语言核心将保持不变,就是说,Rust 2018将只包含表层的破坏性更改,如上面提到的try关键词,或者是一些警告转换成了错误,等等。\

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

\\

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

\\

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值