本週 Rust 動態 479

2023-01-25

說明

本文由 ChatGPT(gpt-3.5-turbo-1106) 翻譯。

你好,歡迎來到另一期的 This Week in RustRust 是一种能让每个人都能构建可靠高效软件的编程语言。这是对其进展和社区的每周总结。希望有什么内容想提及?在 Twitter 上标记我们 @ThisWeekInRust,或在 mastodon.social 上标记 @ThisWeekinRust,或者通过 提交 pull request 联系我们。想参与其中吗?我们欢迎贡献

This Week in Rust 是在 GitHub 上公开开发的。如果你发现本周期的错误,请提交 PR

Rust 社区的更新

官方

基金会

时事通讯

项目/工具更新

观察/思考

Rust 教程

研究

其他

本周推荐的 Crate

本周推荐的 crate 是 Darkbird,一个受 Mnesia 启发的高并发、实时、内存存储库。

感谢 DanyalMh 自荐这个 crate!

请提交您对下周的建议和投票

參與呼籲

一直想要貢獻於開源項目,卻不知道從何開始嗎?每週我們都會突顯 Rust 社群中的一些任務,讓您可以選擇並開始參與!

如果您是一位 Rust 項目所有者,並正在尋找貢獻者,請在此處提交任務。

rust 项目更新摘要

上周有378个拉取请求被合并

即將舉行的活動

2023年01月25日至2023年02月22日之間的 Rusty 活動 🦀

線上活動

亞洲

歐洲

北美洲

如果你正在举办 Rust 活动,请将其添加到日历中,以便在此处提及。请记得添加活动链接。请通过电子邮件联系Rust 社区团队获取访问权限。

工作

请查看最新的r/rust Who's Hiring帖子

本周引言

Rust 已经证明了,即使是在命令式语言中,你可以将类型系统作为分离逻辑的载体,而且它并不像那些不可变的函数式前辈所暗示的那样神秘。它通过确保语言定义了一个有助于你的类型系统,确保了soundness的核心属性可以在其中表达。

  • 内存访问的soundness需求:生命周期
  • 具有值语义的引用的soundness需求:&/&mut _
  • 资源的soundness需求:CopyDrop
  • 确保你的逻辑是单调的:特质取代继承,不支持特化(是的,这是一个特性)。
  • (值得注意的缺失:没有依赖类型;显然不是“必需的”,但我相信它可能是有用的;然而,相关研究正在进行得如火如荼;谨慎是好的)

这使得标准库能够将其所有相关需求都编码为类型。并且在所有地方都这样做就是它的soundness属性:安全的函数在参数类型之和之外没有要求, unsafe函数则会有要求。没有什么新鲜或特别的,也没有什么使 Rust 的soundness概念特别的东西。

将你的数学推理建立在分离逻辑上使soundness审查成为局部而不是需要整个程序分析。这就是使它实用的原因。它做得相当成功和原则性,但并没有做出真正革命性的事情。它是过去十年类型系统研究中的一部分优秀成果的总和。这可能是人们称它为“soundness定义”的原因,这只是一种非常有深意的说法:“我们了解到,一个实用的类型系统可以作为证明检查器”。

HeroicKatora 在 /r/cpp

感谢 Stephan Sokolow 的建议!

请提交引言并为下周投票!

本周 Rust 新闻由 nellshamrell, llogiq, cdmistman, ericseppanen, extrawurst, andrewpollack, U007D, kolharsam, joelmarcey, mariannegoldin, bennyvasquez 编辑。

电子邮件列表由 Rust 基金会 赞助托管

在 r/rust 上讨论