据提案联合作者透露,尽管内存安全问题持续引发担忧,C++标准委员会已放弃了一项旨在创建严格安全语言子集的详细提案。
"Rust安全模型在委员会中不受欢迎。我这边的进一步工作也不会改变这种情况。Profiles方案赢得了这场争论。"
"安全与安保工作组投票决定优先考虑Profiles而非Safe C++。如需最新进展,请咨询Profiles团队。Safe C++项目不会继续推进。"Sean Baxter在今年6月如是说。
当开发者如Simone Bellavia注意到该提案的周年纪念时,这个话题重新浮出水面。一年前,Baxter告诉The Reg,该项目将使C++开发者获得Rust级别的内存安全性,而无需学习新语言。"Safe C++防止用户编写不安全的代码,"他说,"这包括借用检查等编译时智能分析来防止释放后使用漏洞,以及用于类型安全的初始化分析。"
Safe C++支持代码的渐进式迁移,因为它只适用于安全上下文中的代码。现有的不安全代码将照常运行。
即使是提案是否被放弃这个问题本身也不够明确。C++委员会成员兼C++演进工作组(EWG)联合主席Erich Keane表示,Baxter的提案"获得了鼓励性投票,大约一半(20/45)的人支持Sean的论文,30/45的人支持Profiles工作(6人中立)...Sean完全可以继续这项工作,委员会中的许多人都希望看到他在标准化方面做出进一步努力。"
对此,Baxter回应道:"Rust安全模型在委员会中不受欢迎。我这边的进一步工作不会改变这种情况。Profiles赢得了争论。"
他补充说,EWG采纳的语言演进原则包括"我们应该避免要求安全或纯函数注解,这种注解的语义是安全或纯函数只能调用其他安全或纯函数"。他表示,这是一个"不可调和的设计分歧。安全函数着色是Rust安全模型的核心"。
C++发明者Bjarne Stroustrup支持Profiles方案,他告诉我们,该方案的理念是:"我希望获得这套保证,然后它将被强制执行。"据Stroustrup说,"令人遗憾的是,标准委员会感到困惑,没有保证这将包含在C++ 26中。"
话虽如此,Profiles方案同样备受争议,有人抱怨"Profiles看起来不像任何已建立的可行解决方案,没有实现,而且今年早些时候也未能进入C++ 26标准,委员会反而要求另一份白皮书"。
Baxter不相信Profiles能够实现目标。"如果Profiles有成功的机会,我会实现它。但它们永远不会成功。我在这里提供了许多失败原因的例子:https://www.circle-lang.org/draft-profiles.html,"他昨天在Hacker News上说。
他补充道:"整个标准库都是不安全的。我提议了一个严格安全的std2,但被拒绝了。"
围绕如何让C++更安全的争议可能意味着转向不同的语言是更好的解决方案,无论是Rust,还是谷歌实验性的"C++继任者"Carbon项目等其他选择,后者的路线图显示可能在"2028年之后"发布1.0版本语言。
Q&A
Q1:Safe C++提案的核心功能是什么?
A:Safe C++是一个旨在创建严格安全C++语言子集的提案,其核心功能是防止用户编写不安全代码,包括借用检查等编译时智能分析来防止释放后使用漏洞,以及用于类型安全的初始化分析。它支持代码的渐进式迁移,只适用于安全上下文中的代码。
Q2:为什么C++委员会拒绝了Safe C++提案?
A:据提案作者Sean Baxter表示,Rust安全模型在委员会中不受欢迎。委员会在投票中选择优先考虑Profiles方案而非Safe C++。另外,委员会采纳的语言演进原则与Safe C++的安全函数着色机制存在不可调和的设计分歧。
Q3:Profiles方案与Safe C++有什么不同?
A:Profiles方案由C++发明者Bjarne Stroustrup支持,理念是"我希望获得这套保证,然后它将被强制执行"。但该方案同样备受争议,被批评不像任何已建立的可行解决方案,没有实现,且未能进入C++ 26标准。提案作者Baxter认为Profiles永远不会成功。
好文章,需要你的鼓励
AI颠覆预计将在2026年持续,推动企业适应不断演进的技术并扩大规模。国际奥委会、Moderna和Sportradar的领导者在纽约路透社峰会上分享了他们的AI策略。讨论焦点包括自建AI与购买第三方资源的选择,AI在内部流程优化和外部产品开发中的应用,以及小型模型在日常应用中的潜力。专家建议,企业应将AI建设融入企业文化,以创新而非成本节约为驱动力。
字节跳动等机构联合发布GAR技术,让AI能同时理解图像的全局和局部信息,实现对多个区域间复杂关系的准确分析。该技术通过RoI对齐特征重放方法,在保持全局视野的同时提取精确细节,在多项测试中表现出色,甚至在某些指标上超越了体积更大的模型,为AI视觉理解能力带来重要突破。
Spotify在新西兰测试推出AI提示播放列表功能,用户可通过文字描述需求让AI根据指令和听歌历史生成个性化播放列表。该功能允许用户设置定期刷新,相当于创建可控制算法的每周发现播放列表。这是Spotify赋予用户更多控制权努力的一部分,此前其AI DJ功能也增加了语音提示选项,反映了各平台让用户更好控制算法推荐的趋势。
Inclusion AI团队推出首个开源万亿参数思维模型Ring-1T,通过IcePop、C3PO++和ASystem三项核心技术突破,解决了超大规模强化学习训练的稳定性和效率难题。该模型在AIME-2025获得93.4分,IMO-2025达到银牌水平,CodeForces获得2088分,展现出卓越的数学推理和编程能力,为AI推理能力发展树立了新的里程碑。