每日HackerNews RSS

Tight-C 是一门极简的系统编程语言,旨在提供媲美 C 语言的强大性能,同时摒弃现代编程语言中复杂的机制与“隐式魔术”。它直接编译为 C11 代码,去除了垃圾回收、类型推断和面向对象编程(OOP),转而采用显式且可预测的代码编写方式。 该语言仅包含 10 个关键字(包括用于内存管理的 `defer`、定义函数的 `fn` 以及控制可见性的 `pub`),占用极小。它支持原生指针与带切片功能的胖指针、用于保证内存布局可预测的紧凑结构体,并提供与 C 语言无缝对接的 FFI。通过剔除历史包袱,Tight-C 提供了一套透明的工具集,既能让单个开发者完全理解并实现,又足以支撑真实的系统级编程需求。 主要特性包括: * **手动内存控制:** 通过 `alloc`/`free` 实现直接内存访问。 * **可预测性:** 结构体无填充,且不存在隐式变量遮蔽。 * **可读的输出:** 生成简洁、可读且兼容标准工具链的 C 代码。 * **丰富的标准库:** 内置用于 I/O、字符串、数学运算、内存操作及类型转换的模块。 Tight-C 证明了高性能系统代码无需复杂的架构设计。

这篇 Hacker News 讨论帖探讨了 `tc-lang`,一种能转译为 C 语言的小型编程语言。 该项目收到的反馈褒贬不一。一些用户称赞其“简洁之美”和优雅的设计;另一些人则对其效用提出质疑,认为在已有处理胖指针(fat pointers)等功能的 C 语言库的情况下,使用它并没有太大必要。 争议的焦点之一是 AI 的作用;一位评论者表示怀疑,称该项目在大型语言模型(LLM)时代显得“空洞”,并质疑其代码是否为人工编写。技术层面的批评主要集中在语言设计上:评论者建议标准库应更贴近 C 语言的命名规范,而非设置不必要的障碍,并指出了该语言似乎缺乏 `typedef` 等功能。另一些人则针对描述该语言语法的术语展开了辩论,特别是关于关键字与类型之间的区别。 总的来说,尽管用户认可该项目作为一种学习练习的价值,但他们仍建议创建者提供更多关于开发过程及该语言长期愿景的背景信息。

请启用 JavaScript 和 Cookie 以继续。

```Hacker News 新闻 | 过往 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 SpaceX 并非众人想象中的庞然大物 (axios.com) 19 分,由 kaycebasques 发布于 28 分钟前 | 隐藏 | 过往 | 收藏 | 1 条评论 帮助 ryandamm 2 分钟前 [–] 人们真的相信这是一家金融巨头吗?还是说这仅仅是对马斯克那类“准模因股”企业集团的一场豪赌? 回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索: ```

穿孔卡片曾是会计、数据收集和早期计算中无处不在的一部分。在 20 世纪 50 年代至 60 年代的鼎盛时期,全球有数百家公司每月印刷数百万张穿孔卡片。然而,在它们被淘汰后的几年内,这些卡片几乎从公众视野中彻底消失了。本档案收录了这些卡片及其相关资料的一小部分,旨在记录并为未来保存这些历史片段。

这段 Hacker News 讨论介绍了 Tristan Davey 的打孔卡片存档,重点关注了边缘槽口卡片的机械巧思。评论者 "foxglacier" 指出,这些卡片通过针选方式实现了高效的数据检索,能够从数千条记录中进行机械筛选——这种机制至今仍存在于一些儿童益智游戏中。 讨论还指出,打孔卡片历史在现代工程领域依然具有惊人的关联性。结构分析等领域使用的专业软件(如 Abaqus、Nastran)至今仍沿用植根于传统打孔卡片那种严格的列式结构输入格式。尽管如今这些已是数字文件,但输入内容常被称为“卡叠”(decks),工程师们依然沿用着物理计算时代建立的传统术语和格式规范。

Hacker News 上一篇由用户 user8 发布的题为“注销”(Logging Off)的帖子引发了极具争议的讨论,尽管内容简短,却登上了论坛榜首。该帖反映了作者决定断开互联网连接的意愿,这一举动在社区中引发了褒贬不一的回应。 评论者对该帖的相关性看法不一。一些用户质疑为何这种个人的“离别公告”会受到如此关注;而另一些用户则对那种想要逃离当代互联网日益“虚假”且充满敌意环境的情绪产生了共鸣。持怀疑态度的人则指出,在在线论坛上宣布离线是一种讽刺,认为真正的断网并不需要公开声明。 这场辩论还触及了更广泛的主题,包括保持获取互联网以获取资讯的必要性、通过去匿名化来遏制不良行为的潜在益处,以及关于在线空间是否可以被视为“现实世界”有效代理的哲学争论。归根结底,该讨论帖突显了人们对当代数字生活的普遍疲惫感。

`<noscript>` 元素在处理网页故障时作用有限,因为它仅在 JavaScript 被完全禁用时才会触发。它无法应对脚本虽已启用但仍无法正常运行的多种情况,例如网络连接问题、广告拦截插件干扰、部署错误或 API 不兼容等。 由于 JavaScript 可能因各种技术和环境原因导致失效,依赖 `<noscript>` 会带来一种虚假的安全感。与其将其作为处理错误的万能手段,开发者更应遵循 WHATWG 的建议:默认构建无需脚本即可运行的网页并进行渐进增强,或者构建能够即时从“无脚本”状态过渡到“有脚本”状态的应用。通过规避 `<noscript>` 的局限性并优先采用稳健、弹性的架构模式,开发者即便在脚本加载失败的情况下,也能确保提供更可靠的用户体验。

抱歉。

请启用 JavaScript 和 Cookie 以继续。

关于一项提议构建与 TCP/IP 不兼容的新互联网协议栈的讨论,在 Hacker News 上引发了显著的质疑。 尽管许多参与者认同当前的“明网”(clearnet)正因商业化、机器人程序和“平台腐化”(enshittification)而日益退化,但大多数技术贡献者认为,替换互联网底层协议既不可行,也不是解决归根结底属于社会经济问题的方法。批评者指出,任何成功且可扩展的网络,最终都将不可避免地面临当前互联网所遭受的同样的商业化压力和滥用问题。 Gemini 协议、Gopher 以及“本地优先”软件模型等方案常被视为构建“人类规模”数字空间的更实用途径。参与者强调,核心问题——如内容策展、审核以及商业利益的影响——无法仅通过技术架构来解决。相反,许多人建议采用封闭社区、白名单或去中心化的联邦网络,这才是更现实的前进道路。总而言之,共识在于:尽管当前的互联网正在衰落,但解决方案在于构建更好的应用和社会结构,而非抛弃现有的互联网底层基础设施。

更多

联系我们 contact @ memedata.com