gg2
brown.edu

异步/等待的设计空间探索

已归档 —— 这条已轮出今日牌堆,完整内容在此保留。

一句话看懂

一篇 Brown 实验室的论文将各语言中的异步/等待归纳为九个设计维度
它解释了为什么相同的关键字在 Swift 和 Python 中行为不同

背景

异步/等待是一种编程风格,旨在让并发代码看起来像普通的直线代码,如 Python、Rust 或 Swift 中所见。这篇认知工程实验室的论文认为,各实现在可观察语义上存在差异,而不仅仅是性能差异,并识别出九个这样的设计维度。它在一个核心演算上建立了形式语义,以追溯为何不同语言之间的执行结果会不同。

来龙去脉

  1. 2026年9月8日Gavin Gray 在认知工程实验室博客上发表了《异步/等待的设计空间探索》。
  2. 2026年9月9日该论文被发布到 Reddit r/rust 并提交至 Hacker News;Shriram Krishnamurthi 在 X 上分享了它。
  3. 2026年9月10日daily.dev 发布了关于该论文的帖子;Jesse Warden 在 LinkedIn 上评论说,他只答对了 JavaScript。
  4. 2026年9月11日Dominik Tornow 在 X 上强调,该模型已针对全部七个运行时进行了差分模糊测试;Hacker News 上出现了第二次提交。

各方怎么说

作者
Gavin Gray 表示,异步/等待的设计理念是一致的——让并发程序看起来像直线代码——并且该论文从现代实现中识别出了九个设计维度。
分析人士
Dominik Tornow 表示,该论文将各语言中的异步/等待形式化,并强调该模型已针对全部七个运行时进行了差分模糊测试。
公众
Jesse Warden 表示他只答对了 JavaScript,并以为自己也答对了 Python,但显然并非如此。

待核实

Jesse Warden 表示他“本以为自己答对了 Python 那道题,但显然并非如此”——这是个人说法,未经独立证实。

来源

打开 App 看今天的解读 gg2 —— App Store 免费下载