写点什么

Rust 1.21 发布,改进语法和对工具的支持

  • 2017-10-23
  • 本文字数:742 字

    阅读完需:约 2 分钟

Rust 团队刚刚发布了 Rust 1.21 ,带来更灵活的字面量语言特性、更稳定的库,并改进了对工具的支持。

新的语言特性允许将保存在静态内存里的字面量提升为值,这样就可以安全地传递引用。下面的代码现在是合法的:

复制代码
let x: &'static u32 = &5;
thread::spawn(move || {
println!("{}", x);
});

在上一个版本的 Rust 中,上面的代码无法通过编译,因为线程块里的变量 x 引用了字面量 5,5 是保存在栈上的,在线程块函数退出之后就会消失。为了扩展字面量的生存周期,Rust 1.21 的编译器将上述的代码转译成如下的形式:

复制代码
static FIVE: i32 = 5;
let x = &FIVE;

编译器现在可以在进行转译的同时运行 LLVM,所以使用的内存更少了。这样有两个好处:转译和 LLVM 可以同时进行,而且主线程可以在这两者之间切换。另外, rustup 现在支持通过“rustup component add rls-preview”的方式来安装 Rust 语言服务器(RLS)。根据 Rust 团队成员所述,这是安装 Rust 工具的第一步,其中包含了 RLS、Clippy 和 rustfmt,在 Rust 稳定版中就可以正常运行。

在库稳定性方面,现在可以使用 Iterator::for_each 代替 for 循环,如:

复制代码
// 旧代码
for i in 0..10 {
println!("{}", i);
}
// 新代码
(0..10).for_each(|i| println!("{}", i));

这样可以很容易地把多个迭代器串联在一起,如:

复制代码
(0..100)
.map(|x| x + 1)
.filter(|x| x % 2 == 0)
.for_each(|i| println!("{}", i));

另外, Ord 有序集合)的max 和min 函数现在很稳定了。Rc和Arc提供了更友好的接口,包括From<&[T]> where T: Clone、From、From、From<Box > where T: ?Sized 以及 From<Vec>。

可以通过运行 rustup update stable 获取最新的 Rust,更多细节可以参考 Rust 1.21 发布说明

查看英文原文 Rust 1.21 Improves Language Syntax and Tooling

2017-10-23 19:001595
用户头像

发布了 322 篇内容, 共 151.3 次阅读, 收获喜欢 148 次。

关注

评论

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

音乐 NFT 系统的上线

北京木奇移动技术有限公司

软件外包公司 音乐NFT 体育NFT

多种路径规划方案,满足应用个性化导航需求

HarmonyOS SDK

harmoyos

GaussDB高级压缩,破解业务数据激增难题

华为云开发者联盟

MySQL 数据库 GaussDB 数据压缩

政采云业务网关实践:使用 Higress 统一替代 APISIX/Kong/Istio Ingress

阿里巴巴云原生

阿里云 云原生 Higress

软件测试丨静态测试与代码审计

测试人

软件测试

锂电池MES系统:全面优化生产流程,提升质量与效率

万界星空科技

制造业 mes 锂电池 新能源电池 锂电池mes

信创算力关键年的三个趋势与最佳选择

脑极体

信创

唯品会商品详情接口(唯品会 API 系列)

tbapi

唯品会商品数据采集 唯品会API 唯品会商品详情接口

AI产业观察(二):替代地产周期的中国AI周期

ModelWhale

人工智能 AI 大模型 DeepSeek

疯狂SQL转换系列- SQL for Milvs2.4

数由科技

sql 数据科学 huggingfists graphRAG Milvus 2.5

人工智能丨PyTorch 计算机视觉

测试人

软件测试

人工智能丨PyTorch 强化学习与自然语言处理

测试人

软件测试

自研机器人大模型,将是人形机器人创企未来唯一出路!!

机器人头条

机器人 大模型 人形机器人 具身智能

从传统家电到智能生活,海尔智家的服务治理实践

阿里巴巴云原生

阿里云 云原生

利用ima.copilot,打造你的AI知识库

老张

人工智能 知识库 DeepSeek ima.copilot

数字先锋 | 竞技科研蓝海,中南大学先“算”一步!

天翼云开发者社区

云计算 智算平台 算力建设

初探集群联邦

天翼云开发者社区

云计算 集群

首都在线云平台上线DeepSeek-R1系列模型

极客天地

具身智能领域宝藏私域,您需要的皆在「机器人头条」!!

机器人头条

机器人 大模型 人形机器人 具身智能

小红书笔记详情 API 接口:获取、应用与收益全解析

科普小能手

数据挖掘 数据分析 小红书 运营干货 API 接口

Rust 1.21发布,改进语法和对工具的支持_语言 & 开发_Sergio De Simone_InfoQ精选文章