【Hacker News搬运】安全配置文件失败的原因
-
Title: Why Safety Profiles Failed
安全配置文件失败的原因
Text:
Url: https://www.circle-lang.org/draft-profiles.html
很抱歉,我无法直接访问互联网或特定网站来获取内容。但是,我可以根据您提供的链接描述,给出一个基于 Circle 语言(Circle Language,一种编程语言)的假设性总结。 Circle 是一种旨在提高编程效率和可读性的函数式编程语言。以下是针对您提供的链接(Circle 语言草案配置文件)可能包含的内容的假设性总结: --- Circle 语言草案配置文件(https://www.circle-lang.org/draft-profiles.html)提供了一个详细的概述,介绍了 Circle 语言的各个方面,包括: 1. **语言设计哲学**:阐述了 Circle 语言的设计理念和目标,比如提高代码的可读性和简洁性。 2. **语法和结构**:介绍了 Circle 的语法规则,包括变量声明、函数定义、控制流语句等。 3. **类型系统**:讨论了 Circle 的类型系统,包括基本类型、高级类型和类型推断。 4. **模块和包**:描述了如何组织 Circle 代码,包括模块的导入、导出和使用。 5. **配置文件**:详细说明了 Circle 语言的配置文件,这些文件可能包含编译器设置、优化选项和环境变量。 6. **示例代码**:提供了 Circle 语言的代码示例,帮助开发者理解如何使用该语言进行编程。 7. **兼容性和迁移**:讨论了 Circle 与其他语言的兼容性,以及如何将现有代码迁移到 Circle。 8. **性能和优化**:分析了 Circle 语言在执行效率和性能优化方面的特点。 9. **社区和生态系统**:介绍了 Circle 语言背后的社区,以及开发者可以如何参与到该语言的开发和维护中。 请注意,以上内容是基于 Circle 语言的一般特性进行推测的,具体内容可能需要访问提供的链接才能获得。 --- 如果您能提供具体的内容摘要或问题,我可以根据具体内容给出更准确的回答。
Post by: pjmlp
Comments:
SubjectToChange: At this point I'm wondering if the purpose of safety profiles is simply to serve as a distraction. In other words, safety profiles are just something people can point to when the topic of memory safety comes up, that’s it. The objectives of the initiative always seemed hopelessly optimistic, if not absurd. In particular, I don't understand why littering a codebase with auto, const, constexpr, inline, [[nodiscard]], noexcept, etc is wonderful, yet lifetime annotations are somehow an intolerable tyranny.
SubjectToChange: 此时,我;我想知道安全简介的目的是否只是为了分散注意力。换句话说,当涉及到记忆安全的话题时,人们可以指出安全配置文件,仅此而已。该倡议的目标似乎总是无可救药地乐观,如果不是荒谬的话。特别是,我不;我不明白为什么在代码库中添加auto、const、constexpr、inline、[[nodiscard]]、noexcept等是很好的,但生命周期注释在某种程度上是一种无法忍受的暴政。
ameliaquining: These considerations all seem so self-evident that I can't imagine the architects of Safety Profiles weren't aware of them; they are basically just the statement of the problem. And yet these smart people presumably thought they had some kind of solution to them. Why did they think that? What did this solution look like? I would be very interested to read more context on this.
ameliaquining: 这些考虑似乎都是不言而喻的,我可以;我无法想象安全配置文件的架构师是;不知道他们;它们基本上只是问题的陈述。然而,这些聪明人可能认为他们有某种解决方案。他们为什么这么想?这个解决方案是什么样子的?我非常有兴趣阅读更多关于这方面的内容。
alilleybrinker: The article makes the particularly good point that you generally can’t effectively add new inferences without constraining optionality in code somehow. Put another way, you can’t draw new conclusions without new available assumptions.<p>In Sean’s “Safe C++” proposal, he extends C++ to enable new code to embed new assumptions, then subsets that extension to permit drawing new conclusions for safety by eliminating code that would violate the path to those safety conclusions.
alilleybrinker: 这篇文章提出了一个特别好的观点,即如果不以某种方式限制代码中的可选性,通常就无法有效地添加新的推理。换句话说,没有新的假设,你就无法得出新的结论<p> 在Sean的“安全C++”提案中,他扩展了C++,使新代码能够嵌入新的假设,然后对扩展进行子集,通过消除违反安全结论路径的代码,得出新的安全结论。
steveklabnik: Really glad to see this thorough examination of the weaknesses of profiles. Safe C++ is a really important project, and I hope the committee ends up making the right call here.
steveklabnik: 真的很高兴看到对个人资料弱点的彻底检查。Safe C++是一个非常重要的项目,我希望委员会最终能做出正确的决定。
favorited: I know Sean said on Twitter that he probably won't submit this to WG21, but I wish he would... It is a fantastic rebuttal of certain individual's continued hand-waving about how C++ is safe enough as-is.
favorited: 我知道肖恩在推特上说他可能赢了;我不会把这个提交给第21工作组,但我希望他能。。。这是对某些人的绝妙反驳;他继续挥手说C++是如何足够安全的。