据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将包含一个新工具cargo fix,这个工具可以帮助开发人员转换现有的代码库,实现代码的逐步过渡,采用Rust 2018推荐的新特性和习惯用语。
另外,Rust核心团队已于近日发布了Rust 1.28,引入了全局分配器,让开发人员可以提供自己的内存分配器,以代替系统分配器;NonZero数值类型,优化内存;改进错误信息和格式化。
领取专属 10元无门槛券
私享最新 技术干货