Rust 1.63.0 stable 正式发布
Rust 1.63.0 stable 正式发布,赶快升级到最新稳定版本体验 Rust 带给你的强劲动力吧 :)
rustup update stable
简单看看有哪些值得关注的新特性吧:
- scoped threads 允许线程借用局部变量,而不仅仅是静态变量。
- 为原始文件描述符/句柄提供 I/O 安全的包装器类型,如
BorrowedFd
和OwnedFd
,允许使用这些类型来编码所有权语义。 Mutex::new
,RwLock::new
和Condvar::new
都是const
,可以将这些类型用作静态变量。- 完成向非词法生命周期(non-lexical lifetimes)的迁移,完全删除了以前的词法借用检查器。
Announcing Rust 1.63.0: https://blog.rust-lang.org/2022/08/11/Rust-1.63.0.html
用 Rust 重写 Svelte 编译器
pintariching 试图使用 Rust 来重写 Svelte 编译器,过去,该编译器是由 TypeScript 实现的。
GitHub - pintariching/rustle: https://github.com/pintariching/rustle
This Week in Rust 455
新一期的 Rust 周报速递发布,快来看看有哪些内容你曾经关注过 :)
This Week in Rust 455:https://this-week-in-rust.org/blog/2022/08/10/this-week-in-rust-455/
From 日报小组 PsiACE
社区学习交流平台订阅:
1
共 2 条评论, 1 页
评论区
写评论Rust 从 2018 版本开始就开始让 NLL 处于迁移模式(新旧借用检查系统并存),现在只是关闭迁移模式,完全使用 NLL(只使用新的,停止使用旧的)。
好处就是让借用检查更符合“人的直觉”,更加 ergonomic。
坏处是增加编译器复杂度(以及潜在的一些 corner case)。
NLL 概念不是面向大多数 Rust 使用者,因为实质上是 Rust 对借用检查系统的改进(也就是编译器内部的改进)。
但是,我觉得所有使用者应该对它有所了解,我觉得有必要熟悉的链接(我翻译的中文):
一个典型的 NLL 错误是三段式描述的(这是由 RFC 2094 定义的):
首先,产生了值的借用。
然后,产生了使引用无效的操作。
最后,在引用无效后,下一次该引用被使用了。
--
👇
zzhaolei: > 完成向非词法生命周期(non-lexical lifetimes)的迁移,完全删除了以前的词法借用检查器
有人方便简要说明一下这个改动的好处是什么吗,谢谢
有人方便简要说明一下这个改动的好处是什么吗,谢谢