5天前
|
|
|
111
## 今天 Hacker News 社区聊了啥? NO.20250727
速览今日科技热点!骁龙X Elite芯片加持,Linux要在ARM笔记本上起飞啦!老年人福音:甜菜根汁靠改变口腔菌群竟能降血压?NASA因离职计划无奈裁员,背后原因引人深思。还有Dumb Pipe教你设备直连,分层推理AI模型挑战复杂任务,以及多款高性能RISC-V处理器蓄势待发!想知道如何用LVM缓存加速HDD?博世超迷你PM2.5传感器有啥黑科技?Komoot被收购又暴露了哪些资本套路?Raspberry Pi打造低功耗服务器集群了解一下!数字身份的未来是自托管还是自主权?还有Janet这种轻量级Lisp等你探索!更多精彩,下滑阅读全文!

---
## Snapdragon X Elite 芯片上的 Linux:Linaro 和 TUXEDO 为 ARM64 笔记本电脑铺平道路
本文主要介绍了 Linaro 和 TUXEDO 合作,在 Snapdragon X Elite 芯片上运行 Linux 的最新进展,展示了 ARM64 笔记本电脑的巨大潜力。文章详细阐述了在骁龙 X Elite 笔记本电脑上集成 Linux 支持方面取得的重大进展,包括对联想、戴尔、华硕、惠普和微软 Surface 等多款商用笔记本电脑的 Kernel 6.15 支持。
Linaro 工程师在 GPU 加速、外部显示输出、USB 支持、音频支持、摄像头支持、散热管理以及 Wi-Fi/蓝牙/调制解调器等方面做出了诸多改进。Ubuntu 社区已经发布了 Ubuntu 24.10 的可安装概念发行版,Canonical 正在为 Ubuntu 25.04 添加 ARM64 笔记本电脑支持,Fedora 也在积极开发中。
TUXEDO Computers 致力于推出预装 Linux 的高通笔记本电脑,并与 Linaro 合作解决了设备上缺失的问题。在 Linaro Connect 2025 大会上,TUXEDO 展示了 Elite 14 Gen1 原型机,演示了通过 USB-C 端口连接键盘、鼠标和外部显示器,同时运行模拟的 X86-64 游戏。
评论区主要讨论了 TUXEDO 产品的用户体验和对 Linux on ARM 的期望。
@pentamassiv 提到对 TUXEDO 的一些负面体验,包括驱动更新不及时、软件体验差以及设备维修困难。
@mg 询问是否能在 Microsoft Surface 等平板电脑上安装 Debian,表达了对 Linux 在平板设备上应用前景的期待。
@rr808 表达了对 TUXEDO 产品的期待。
- 原文: [Linux on Snapdragon X Elite: Linaro and Tuxedo Pave the Way for ARM64 Laptops](https://www.linaro.org/blog/linux-on-snapdragon-x-elite/)
- Hacker News: [https://news.ycombinator.com/item?id=44699393](https://news.ycombinator.com/item?id=44699393)
- 作者: MarcusE1W
- 评分: 174
- 评论数: 103
- 发布时间: 2025-07-27 15:01:02
---
## 甜菜根汁通过改变口腔微生物群来降低老年人的血压
研究表明,富含硝酸盐的甜菜根汁降低老年人血压的效果可能与他们口腔微生物群的特定变化有关。这项研究比较了老年人和年轻人的反应,发现甜菜根汁对老年人的血压有显著降低作用,而对年轻人则没有。
这项研究由埃克塞特大学的研究人员进行,他们发现,当老年人每天两次饮用浓缩的甜菜根汁“shot”,持续两周后,他们的血压降低了。研究人员认为,这可能是由于口腔中潜在有害细菌的抑制所致。口腔细菌中有益菌和有害菌之间的不平衡会降低硝酸盐(蔬菜中含量丰富)向一氧化氮的转化。一氧化氮是血管健康功能和血压调节的关键。
研究招募了39名30岁以下的成年人和36名60多岁和70多岁的成年人。每个小组分别用两周时间定期服用富含硝酸盐的甜菜根汁,以及用两周时间服用去除硝酸盐的安慰剂版本的甜菜根汁。在两种情况下,口腔微生物群的组成在饮用富含硝酸盐的甜菜根汁后都发生了显著变化,但这些变化在年轻人和老年人之间有所不同。
老年组在饮用富含硝酸盐的果汁后,口腔细菌 _Prevotella_ 明显减少,而已知有益健康的细菌如 _Neisseria_ 的生长增加。研究开始时,老年组的平均血压较高,但在服用富含硝酸盐的甜菜根汁后血压下降,但在服用安慰剂补充剂后血压没有下降。这项研究表明,富含硝酸盐的食物会改变口腔微生物群,从而减少炎症,并降低老年人的血压。
- 原文: [Beetroot juice lowers blood pressure in older people by changing oral microbiome](https://news.exeter.ac.uk/faculty-of-health-and-life-sciences/beetroot-juice-lowers-blood-pressure-in-older-people-by-changing-oral-microbiome/)
- Hacker News: [https://news.ycombinator.com/item?id=44700923](https://news.ycombinator.com/item?id=44700923)
- 作者: lightlyused
- 评分: 66
- 评论数: 28
- 发布时间: 2025-07-27 20:44:31
---
## Dumb Pipe:轻松实现设备间直连
Dumb Pipe 提供了一种简便的方式,用于在设备之间建立直接连接,尤其是在 NAT 环境下。它利用 Iroh Connections 技术,穿透 NAT,并在网络条件变化时保持连接的稳定性。
Dumb Pipe 的核心功能是简化设备间的连接过程,用户无需复杂的配置或账户设置。通过简单的命令行操作,即可在两台计算机之间建立类似 Unix 管道的连接,实现数据传输。其安装过程也十分便捷,只需一条命令即可完成。Dumb Pipe 的工作原理是使用 QUIC 协议,通过一个“魔法 Socket”实现连接,该 Socket 具备 UDP 基础、流多路复用和加密等特性。
虽然大多数情况下 Dumb Pipe 可以实现设备间的直接连接,但仍有约 10-20% 的情况需要通过中继节点进行数据转发。为此,Dumb Pipe 使用一个网状中继节点网络,将 UDP 流量打包并通过 HTTP 协议发送。Iroh Connections 提供了更多可选的附加功能,如发布/订阅、数据传输和同步等,但添加这些功能会使管道变得更加复杂。
Dumb Pipe 背后的团队运营着默认的中继网络,但带宽有限制。用户可以通过 N0des 获取更高吞吐量和经过身份验证的中继服务。开发者可以将 Iroh Connection 层集成到自己的应用程序中,利用 Dumb Pipe 的连接能力。
- 原文: [Dumb Pipe](https://www.dumbpipe.dev/)
- Hacker News: [https://news.ycombinator.com/item?id=44701555](https://news.ycombinator.com/item?id=44701555)
- 作者: udev4096
- 评分: 3
- 评论数: 0
- 发布时间: 2025-07-27 22:25:47
---
## 突破性AI模型:分层推理模型 (HRM)
这篇论文介绍了一种名为分层推理模型 (HRM) 的新型 AI 架构,旨在解决复杂推理任务的挑战,它在不需要大量数据和预训练的情况下,就能在复杂任务上取得优异表现。
HRM 的灵感来源于人脑的分层和多时间尺度处理方式。它采用了一种循环架构,通过两个相互依赖的循环模块进行顺序推理:一个高层模块负责缓慢、抽象的规划,而一个低层模块处理快速、详细的计算。这种设计使得 HRM 能够在单个前向传递中执行顺序推理任务,而无需显式监督中间过程。
该模型仅有 2700 万参数,但通过仅使用 1000 个训练样本,在复杂推理任务上实现了卓越的性能,无需预训练或思维链 (CoT) 数据。令人印象深刻的是,HRM 在复杂的数独谜题和大型迷宫中的最佳路径寻找等挑战性任务上实现了接近完美的性能。
此外,HRM 在抽象和推理语料库 (ARC) 上优于更大的模型,ARC 是衡量通用人工智能能力的关键基准。这些结果表明,HRM 有潜力成为通用计算和通用推理系统的变革性进步。该模型通过模拟人脑的推理方式,在计算效率和性能方面都取得了显著的突破。
总而言之,HRM 的核心优势在于其分层结构和循环机制,使其能够在计算深度和效率之间取得平衡。它在各种复杂推理任务中的成功,预示着其在 AI 领域的广阔应用前景,并为未来的研究方向提供了新的思路。
- 原文: [Hierarchical Reasoning Model](https://arxiv.org/abs/2506.21734)
- Hacker News: [https://news.ycombinator.com/item?id=44699452](https://news.ycombinator.com/item?id=44699452)
- 作者: hansmayer
- 评分: 133
- 评论数: 50
- 发布时间: 2025-07-27 15:15:57
---
## 三款值得关注的高性能 RISC-V 处理器:UltraRISC UR-DP1000、Zhihe A210 和 SpacemIT K3
本文介绍了 2025 年下半年预计推出的三款高性能 RISC-V 处理器,分别是 UltraRISC UR-DP1000、Zhihe A210 和 SpacemIT K3。虽然目前关于这些处理器的信息有限,但文章整理了从网络上搜集到的相关资料,尤其是在中国 RISC-V 峰会上发布的信息。
UltraRISC UR-DP1000 是一款八核 64 位 RISC-V SoC,采用 UR-CP100 核心,主频高达 2.0 GHz,兼容 RVA22 规范,并部分兼容 RVA23。它支持硬件虚拟化、DDR4-3200 ECC 内存(最高 64GB)、PCIe 4.0 和多种 I/O 接口。该处理器将被应用于 Shenzhen Milk-V Technology 的 Titan mini-ITX 主板,预计在 2026 年第四季度实现 mainline Linux 支持。
Zhihe A210 的信息相对较少,但已知它也是一款八核 64 位 RISC-V CPU,采用统一计算架构(UCA),具有高达 12 TOPS (INT8) 的 AI 推理能力。它针对边缘服务器应用进行了优化,例如视频编解码、加解密、AI 大模型推理和数据存储,旨在提供一种与传统 GPU/GPGPU 解决方案竞争的性价比更高的方案。
SpacemIT K3 的信息最少,目前只知道它也是一款高性能 RISC-V 处理器,具体规格尚未公布。
总而言之,这三款处理器代表了 RISC-V 在高性能计算领域的新进展,值得开发者和科技爱好者关注。它们有望在服务器、边缘计算和嵌入式系统等领域发挥重要作用。
由于文章中没有评论内容,因此无法进行评论观点的总结和分析。
- 原文: [High-performance RISC-V processors: UltraRISC UR-DP1000, Zhihe A210, SpacemIT K3](https://www.cnx-software.com/2025/07/22/three-high-performance-risc-v-processors-to-watch-in-h2-2025-ultrarisc-ur-dp1000-zizhe-a210-and-spacemit-k3/)
- Hacker News: [https://news.ycombinator.com/item?id=44658722](https://news.ycombinator.com/item?id=44658722)
- 作者: fork-bomber
- 评分: 39
- 评论数: 7
- 发布时间: 2025-07-23 20:58:48
---
## NASA 因离职计划裁员近 4000 人
本文讨论了由于特朗普政府的离职计划,NASA 近 4000 名员工选择离职,约占 NASA 员工总数的 20%,以及预算削减对 NASA 的影响。
根据 NPR 的报道,NASA 发言人 Cheryl Warner 表示,通过特朗普政府的延期离职计划,NASA 将从 18,000 名员工减少到 14,000 名。 这项计划是为了减少联邦政府的劳动力,并实施政府效率部(DOGE)建议的削减措施。 第一轮有 870 名员工申请离职,第二轮有 3000 名员工申请。 虽然目前还不清楚裁员何时生效,但特朗普政府还提议削减 NASA 的预算,2026 财年的预算申请将减少约 24% 的资金。 不过,众议院和参议院正在讨论保持 NASA 目前预算的建议。 然而,特朗普签署的“一个伟大的美丽法案”为 NASA 提供了额外的资金,用于火星任务和重返月球的计划。 科学家和太空组织批评了白宫提出的预算削减和机构改革。
评论区对 NASA 的裁员和预算削减表达了不同的看法。 一些人认为这是共和党削弱联邦机构,并将其私有化的策略。 另一些人则认为 NASA 需要改革,并批评 SLS 项目效率低下。 还有人担心裁员会导致机构知识的流失,以及对科学研究的长期影响。 也有评论提到 SpaceX 等私营公司在太空任务方面的效率更高,建议将太空任务私有化。 此外,还有评论指出 NASA 的资金是自 1961 年以来最低的,并对美国政府的反科学立场表示担忧。 一些评论员希望 SpaceX 和蓝色起源等公司能够聘用这些失业的 NASA 员工。 也有人认为,现任政府的目标是在本届任期结束前登上火星,以复制肯尼迪政府的政治、声望和技术胜利。
- 原文: [4k NASA employees opt to leave agency through deferred resignation program](https://www.kcrw.com/news/shows/npr/npr-story/nx-s1-5481304)
- Hacker News: [https://news.ycombinator.com/item?id=44699052](https://news.ycombinator.com/item?id=44699052)
- 作者: ProAm
- 评分: 142
- 评论数: 171
- 发布时间: 2025-07-27 13:17:03
---
## 使用 LVM 缓存加速 HDD 存储:一种经济高效的方案
本文介绍了如何利用 Linux 的 LVM (Logical Volume Manager) 来缓存 HDD 上的数据,从而实现快速且廉价的大容量存储方案。特别适合需要大容量存储,但只有部分数据需要快速访问的场景。
文章指出,虽然 SSD 速度快,但 HDD 价格更低。将常用数据缓存在 SSD 上,不常用的数据放在 HDD 上,是一种折衷方案。传统的 SSHD 和 ZFS 的 L2ARC 也能实现类似功能,但作者考虑到 ZFS 的兼容性问题,最终选择了 LVM。为了保证 HDD 数据的可靠性,作者还使用了 mdadm 创建 RAID 1 阵列。
文章详细介绍了 LVM 的基本概念,包括物理卷 (PV)、逻辑卷 (LV) 和卷组 (VG)。PV 是 LVM 的底层存储,LV 是 LVM 提供的块设备,VG 则是由 PV 组成的存储池。LVM 允许灵活地扩展 LV,即使在 LV 正在被访问时也可以进行扩展。
文章还对比了其他 Linux 上的块设备缓存方案,如 bcache 和 EnhanceIO。作者认为 bcache 的配置方式不够友好,且存在数据损坏的报告,而 EnhanceIO 则已经很久没有维护。因此,作者选择了自己熟悉的 LVM。
文章详细讲解了如何使用 mdadm 创建 RAID 1 阵列,以及如何创建 SSD 缓存分区、卷组和缓存 LV。最后,文章还介绍了如何监控缓存的性能。
总而言之,这篇文章提供了一个经济高效的方案,通过 LVM 缓存技术,充分利用 SSD 的速度和 HDD 的容量,提升存储性能和可靠性。
- 原文: [Fast and cheap bulk storage: using LVM to cache HDDs on SSDs](https://quantum5.ca/2025/05/11/fast-cheap-bulk-storage-using-lvm-to-cache-hdds-on-ssds/)
- Hacker News: [https://news.ycombinator.com/item?id=44698754](https://news.ycombinator.com/item?id=44698754)
- 作者: todsacerdoti
- 评分: 148
- 评论数: 32
- 发布时间: 2025-07-27 11:38:27
---
## 博世推出全球最小 PM2.5 传感器 BMV080,助力改善室内空气质量
博世 Sensortec 发布了 BMV080,一款超小型 PM2.5 空气质量传感器,旨在提供准确、可操作的数据,帮助人们改善健康。该传感器体积小巧,采用无风扇设计,可集成到各种 IoT 设备中,实现实时、本地化的空气质量监测。
BMV080 的核心优势在于其微型尺寸,仅为 4.2 x 3.5 x 3 毫米³,比市场上同类产品小 450 倍以上。这种小型化设计得益于其基于超紧凑型激光器和集成光电二极管的创新设计。该传感器无需风扇即可直接测量空气中的 PM2.5 浓度,并通过复杂的算法提供精确的数据。
与传统的 PM2.5 传感器相比,BMV080 具有免维护、无噪音的优点。它不会因风扇积尘而导致故障,适用于空气质量监测器、智能恒温器、智能音箱等各种设备。通过集成 BMV080,这些设备可以实时监测空气质量,并在 PM2.5 超标时向用户发出警报,从而帮助用户及时采取通风或过滤措施。
该传感器在各种场景下都具有应用潜力,例如:在地铁站等污染严重的场所,可穿戴设备上的 BMV080 可帮助用户判断是否需要佩戴口罩;在烹饪过程中,BMV080 可检测油烟浓度,并自动启动通风系统;在壁炉旁,BMV080 可检测燃烧产生的颗粒物,并触发空气净化器。
评论区对 BMV080 的技术细节、应用前景以及与其他传感器的对比展开了讨论:
* **无风扇设计的原理:** 有评论者好奇 BMV080 如何在没有风扇和明确体积的情况下测量 PM2.5 浓度,猜测其主要区别在于软件算法。
* **维护需求:** 有用户询问 BMV080 是否有维护要求,并分享了 Sensirion SPS30 PM 传感器的使用经验,对其稳定性和一致性表示赞赏。
* **雾霾天气的影响:** 有评论指出,许多颗粒物传感器在雾霾天气下会失效,影响数据质量,并询问 BMV080 如何应对这种情况。
* **DIY 实用性:** 有用户认为,虽然 BMV080 的传感器元件很小,但加上散热片和镜头后,整体尺寸会变大,对于 DIY 爱好者来说可能不太实用,希望未来能推出更小巧的集成模块。
* **应用场景:** 有评论者设想 BMV080 可以应用于手机或智能手表的空气质量应用,方便用户随时随地监测空气质量。
* **产品名称的理解:** 有用户指出,产品名称应理解为“用于颗粒物的最小传感器”,而不是“最小颗粒物的传感器”。
- 原文: [Smallest particulate matter air quality sensor for ultra-compact IoT devices](https://www.bosch-sensortec.com/news/worlds-smallest-particulate-matter-sensor-bmv080.html)
- Hacker News: [https://news.ycombinator.com/item?id=44698733](https://news.ycombinator.com/item?id=44698733)
- 作者: Liftyee
- 评分: 122
- 评论数: 38
- 发布时间: 2025-07-27 11:34:47
---
## Komoot 被收购事件:资本如何侵蚀社区
这篇文章探讨了路线规划平台 Komoot 被私募股权公司收购后,社区用户和员工遭受的背叛,并以此为例,分析了企业资本与社区之间破裂的关系。文章指出,Komoot 事件并非孤例,而是资本主义体系下价值提取的必然结果。
文章首先回顾了 Komoot 被 Bending Spoons 收购的事件,指出 Komoot 的创始人违背了长期承诺,将公司出售给私募股权公司,导致大量员工被解雇,用户也被蒙在鼓里。文章认为,这是一种典型的“拔地毯”行为,即利用虚假承诺吸引用户和员工,然后将其出卖以获取利润。文章进一步分析了 Komoot 的商业模式,指出其依赖于持续的用户增长,这在有限的世界中是不可持续的。为了追求增长,Komoot 优先考虑用户数量和参与度,而忽视了用户反馈。最后,文章指出,私募股权公司的商业模式在于榨取公司的最大利润,直到其死亡,然后将其抛弃。
文章还强调了资本对社区的侵蚀,指出资本不会创造新的想法,而是从外部介入并挪用。文章以 gravel 和 bikepacking 为例,说明了资本如何将社区活动商业化。
总而言之,文章旨在揭示企业资本与社区之间的紧张关系,并呼吁人们抵制资本对社区的侵蚀。
- 原文: [When we get Komooted](https://bikepacking.com/plog/when-we-get-komooted/)
- Hacker News: [https://news.ycombinator.com/item?id=44699421](https://news.ycombinator.com/item?id=44699421)
- 作者: atakan_gurkan
- 评分: 322
- 评论数: 171
- 发布时间: 2025-07-27 15:07:09
---
## 使用 Raspberry Pi 构建低功耗 1U 服务器集群
本文介绍了如何使用 Raspberry Pi 构建一个低功耗的 1U 服务器集群,目标是在有限的功率预算下,最大化计算能力、存储和性价比,适用于低成本的服务器托管。
文章的核心在于设计一个符合 1U 空间和低功耗限制(例如 1A @ 120v)的服务器。为了实现这个目标,作者详细列出了所有必要的硬件组件,包括 1U 机箱、存储设备(SSD 和 Micro SD 卡)、存储盒、网络交换机和 Raspberry Pi 4b。
在存储方面,作者选择了 M.2 接口的 SSD,以节省空间,并使用 UASP 协议来提高磁盘 I/O 性能。网络方面,由于 IP 地址数量有限,作者选择了非管理型交换机,避免了配置防火墙和路由器的需求。
此外,文章还讨论了功耗管理,包括使用 ATX 电源分线板和远程电源管理方案。远程电源管理通过继电器连接到 Raspberry Pi 的 GPIO 引脚来实现。文章还提供了详细的软件和硬件设置指南,以及网络配置说明。
最后,文章还对比了云服务器和物理服务器的成本,并提出了 V2 版本的改进想法。该项目总成本约为 800 美元,提供了 20 个 1.5GHz CPU 核心、16GB 内存和 1.2TB SSD 存储。
- 原文: [A low power 1U Raspberry Pi cluster server for inexpensive colocation (2021)](https://github.com/pawl/raspberry-pi-1u-server)
- Hacker News: [https://news.ycombinator.com/item?id=44660219](https://news.ycombinator.com/item?id=44660219)
- 作者: LorenDB
- 评分: 90
- 评论数: 36
- 发布时间: 2025-07-23 23:20:28
---
## 自主主权而非自托管:未来数字身份的新方向
本文探讨了在数字时代,用户如何才能真正掌握自己的数据和身份,核心观点是未来不在于完全的自托管,而在于实现“自主主权”。文章认为,自托管虽然是一种对中心化服务和监控的反抗,但它也带来了技术复杂性、维护负担和社会隔离等问题。
文章指出,自托管最终可能导致用户重新构建一个个孤立的“围墙花园”,无法实现真正的互操作性。问题的根源在于缺乏统一的身份协议、用户数据标准和可组合的交互基础设施。因此,文章提出了“自主主权身份”的概念,强调用户拥有所有权,但不必完全依赖自身。通过使用去中心化身份标识符(DID),用户可以在不同的系统中使用同一身份,实现跨平台的可移植性和互操作性,而无需依赖中心化的身份提供商。文章还介绍了DID Spaces,这是一种协议原生的数据容器,允许用户控制自己的数据,但不必将其存储在自己的服务器上。这种方式兼顾了数据的控制权和灵活性。文章强调,技术只有在结构上默认支持自由时才能真正解放用户,我们需要从以平台为中心的系统转向以协议为中心的系统。
评论区出现了不同的声音,有人强烈反对文章的观点,认为仅仅因为目前的自托管环境不够完善就否定其价值,类似于在1970年预测个人电脑不会普及。评论者认为,随着软件技术的进步,特别是人工智能的发展,自托管的软件生态正在快速发展,未来将会出现更多易于使用的自托管解决方案。此外,评论还强调了拥有自己的基础设施的重要性,认为依赖“社区托管”或企业云服务存在可靠性和条款变更等风险。
- 原文: [The future is not self-hosted, but self-sovereign](https://www.robertmao.com/blog/en/the-future-is-not-self-hosted-but-self-sovereign)
- Hacker News: [https://news.ycombinator.com/item?id=44698899](https://news.ycombinator.com/item?id=44698899)
- 作者: robmao
- 评分: 81
- 评论数: 81
- 发布时间: 2025-07-27 12:26:08
---
## Janet:轻量级、富有表现力且现代的 Lisp 语言
Janet 是一种小巧但功能强大的编程语言,特别适合系统脚本、嵌入式应用和快速原型开发。它以 C99 实现,跨平台支持良好,并提供了线程、网络、事件循环等开箱即用的功能。
Janet 的主要亮点包括:单二进制文件即可运行,内置多线程、网络和事件循环支持,头等闭包和垃圾回收机制,可变与不可变的数据结构,宏,尾调用优化,以及与 C 的直接互操作性。它还具备动态加载 C 库、词法作用域、REPL 交互式调试器,以及内置的解析表达式文法。Janet 核心库包含 500 多个函数和宏,并支持将项目导出为独立可执行文件。你甚至可以只使用 `janet.c` 和 `janet.h` 将其添加到现有项目中。文章中还展示了使用 Janet 解决 3SUM 问题的代码示例,以及如何通过 REPL 启动和使用 Janet。此外,文章还推荐了一些 Janet 的模块和库,如 Circlet(HTTP 服务器)、Joy Web Framework 和 JSON 解析器等,并提供了各种编辑器的支持链接,方便开发者选择自己喜欢的 IDE。
评论区里,有开发者提到了 Lisp 语法在 IDE 自动补全方面的不足,认为 `(fun a b c)` 形式不如 `a.fun(b, c)` 更方便 IDE 提供帮助。有人分享了 Janet 的入门书籍链接,方便大家学习。还有人贴出了之前关于 Janet 的讨论链接,可以了解更多背景信息。总的来说,大家对 Janet 这种轻量级的 Lisp 方言表现出了兴趣,同时也关注其在实际开发中的便捷性。
- 原文: [Janet: Lightweight, Expressive, Modern Lisp](https://janet-lang.org)
- Hacker News: [https://news.ycombinator.com/item?id=44698185](https://news.ycombinator.com/item?id=44698185)
- 作者: veqq
- 评分: 121
- 评论数: 49
- 发布时间: 2025-07-27 09:28:36
---
## 约束性语言更易于优化
这篇文章探讨了为什么具有约束性的编程语言更容易进行优化,以及如何通过选择合适的工具来提高代码性能。文章核心观点是,暴露原始指针的语言难以优化,而具有额外结构的约束性语言则能给编译器带来更大的优化空间。
文章首先指出,现代“底层”语言难以优化,因为它们不反映硬件特性,需要复杂的别名分析,并且频繁地分配和释放内存。为了实现更快的语言,文章以 Haskell 中的流融合为例,展示了如何通过引用透明性进行优化。随后,文章引入 Futhark 语言,它通过限制数组操作和使用无装箱的固定大小整数,实现了比 C 语言更高的性能。文章还提到了 SQL 这种声明式语言,其性能在过去几十年中得到了显著提升。
文章进一步指出,虽然原始指针在某些内存优化中是必需的,但这种情况非常罕见。因此,我们应该倾向于不暴露原始指针的通用语言,并在必要时才使用它们。Rust 在这方面是一个很好的例子,它通过 `unsafe` 关键字选择性地启用原始指针,并提供迭代器和 Rayon 等工具来简化多线程编译。文章最后强调,我们应该构建元语言,以便轻松地为每个任务选择合适的工具,并提高不同语言之间的互操作性。
评论区观点多样,有人认为文章的观点与“最小权限原则”相符,即限制语言的能力可以使其在更多方面得到应用。也有人质疑高级语言编译器的优化承诺,认为“比 C 更快”的说法往往难以实现。还有人回忆起 Java 在 2000 年代的类似说法,并对高级语言的优化能力表示怀疑。最后,有人以一个只能输出 "hello world" 的语言为例,讽刺了过度约束可能导致的局限性。
- 原文: [Constrained languages are easier to optimize](https://jyn.dev/constrained-languages-are-easier-to-optimize/)
- Hacker News: [https://news.ycombinator.com/item?id=44699980](https://news.ycombinator.com/item?id=44699980)
- 作者: PaulHoule
- 评分: 32
- 评论数: 22
- 发布时间: 2025-07-27 17:21:13
---
## 冠状动脉钙化 (CAC) 检测:动脉斑块的早期预警
冠状动脉钙化 (CAC) 检测是一种用于检测动脉中是否存在斑块的手段,但目前在美国的普及率仍然偏低。本文探讨了CAC检测的重要性,以及它如何帮助识别心脏疾病风险。
文章指出,CAC检测能够有效检测出冠状动脉中的钙化斑块,这些斑块是动脉粥样硬化的一个指标,预示着未来发生心脏事件的风险。通过早期发现这些斑块,医生可以采取预防措施,例如改变生活方式或药物治疗,从而降低心脏病发作或中风的风险。尽管CAC检测具有潜在的益处,但由于各种原因,包括医生对其价值的认知不足以及患者的知情度有限,该检测的普及率仍然较低。文章还强调了CAC检测的便捷性和相对较低的成本,使其成为一种具有吸引力的早期筛查工具。此外,文章还讨论了CAC检测结果的解读,以及如何根据检测结果制定个性化的治疗方案。
评论区对CAC检测的必要性和替代方案展开了热烈的讨论。
一些评论者分享了他们通过CAC检测发现潜在心脏问题的经历,强调了该检测在早期发现风险方面的重要作用。例如,一位评论者提到,通过CAC检测发现自己有95%的动脉阻塞,并及时进行了治疗。另一些评论者则建议在进行CAC检测之前,先进行其他风险评估,如ApoB、Lp(a)和hs-CRP等指标的检测,以更全面地了解心脏健康状况。还有评论指出,即使CAC检测显示存在钙化斑块,也不一定意味着存在严重风险,因为硬化的斑块相对稳定。CT血管造影可以区分软斑块和硬斑块,提供更详细的信息。此外,评论中也提到了生活方式和饮食习惯对动脉粥样硬化的影响,强调了健康饮食和生活方式的重要性。有人指出,肠道细菌产生的某些分子可能导致动脉粥样硬化,并建议减少奶酪等食物的摄入。
- 原文: [Coronary artery calcium testing can reveal plaque in arteries, but is underused](https://www.nytimes.com/2025/07/26/health/coronary-artery-calcium-heart.html)
- Hacker News: [https://news.ycombinator.com/item?id=44697145](https://news.ycombinator.com/item?id=44697145)
- 作者: brandonb
- 评分: 138
- 评论数: 131
- 发布时间: 2025-07-27 05:45:07
---
## 电缆细菌:活着的电池
本文介绍了在丹麦奥胡斯大学发现的电缆细菌,它们通过连接成链状,利用细胞间的“电缆”结构,远距离传递电子,实现氧化还原反应的分离,就像活着的电池一样。
电缆细菌最初于 2012 年在附近的湖泊中被发现,它们将数千个细胞首尾相连,形成长达数厘米的链条。 链条的一端氧化泥土中的硫化物,剥离电子。 一旦释放,这些电子就会沿着链条向上移动到水面,链条顶端的细胞将它们传递给受体分子,例如氧气或硝酸盐。 这些微生物有效地充当了活电池。 这种细菌能够将氧化还原反应(所有生命形式能量产生的基石)分布在数千个细胞中,原因在于湖泊和池塘中,氧气只能渗透到泥土的上层几毫米。 在此之下,沉积物迅速变成缺氧状态。 由于生活在更深处的微生物无法获得氧气,它们必须找到另一种方法来处理电子。
电缆细菌通过在较大的物理空间中分离氧化还原反应的两半部分,巧妙地进化出了一种方式。 它们可以获取泥土深处的电子供体(如硫化物)和上方水域中的电子受体(如氧气)。 电缆细菌的发现也带有一定的偶然性。 21 世纪初,丹麦科学家 Lars Peter Nielsen 从附近的湖泊中采集了一些泥土,放入玻璃烧杯中,并使用微型传感器研究泥土的化学成分。 实验开始时,泥土中充满了硫化氢,这是沉积物气味和颜色的来源。 但 30 天后,一块泥土的颜色变浅,表明一些硫化氢已经消失。 最终,微型传感器表明所有化合物都已消失。 尼尔森回忆说,鉴于科学家对泥土生物地球化学的了解,“这根本讲不通”。
更具体地说,这“讲不通”是因为硫化氢通常存在于沉积物深处,那里没有氧气。 在这种条件下,大多数细菌无法代谢它。 消耗硫化氢的反应通常需要氧气或其他电子受体,而这些都不应该存在于那么深的地方。 因此,当传感器显示硫化氢已经消失时,这在化学上似乎是不可能的。 奇怪的是,当尼尔森将一根细线插入沉积物中时,它打破了这种模式; 硫化氢仍然存在。 他开始怀疑一种特殊的细菌可能会从硫化氢中剥离电子,并将其传输到很远的距离。 但当尼尔森向同事们提到这个想法时,他们持怀疑态度。 自此,研究人员对电缆细菌如何移动电子有了更多的了解,其距离可达 7 厘米(比单个细菌远 30,000 倍)。 电缆中的每个细菌都有由蛋白质制成的脊,嵌入其内膜和外膜之间的空间中。 这些脊就像埋藏的电线,可以传输电子。 在链中两个细胞相遇的地方,这些蛋白质线从一个细胞的周质移动到下一个细胞,从而形成一条贯穿整个细丝的连续导电路径。
- 原文: [Cable bacteria are living batteries](https://www.asimov.press/p/cable-bacteria)
- Hacker News: [https://news.ycombinator.com/item?id=44661571](https://news.ycombinator.com/item?id=44661571)
- 作者: mailyk
- 评分: 66
- 评论数: 18
- 发布时间: 2025-07-24 01:12:57
---
## Base58 与 Base85 编码:人类友好的二进制数据表示
本文探讨了 Base58 和 Base85 编码,它们都是将二进制数据转换成人类可读形式的方法。Base58 编码因其在比特币系统中的应用而闻名,而 Base85 编码则是 Base64 的一种更紧凑的替代方案,常见于 PDF 格式和 git 的 patch 编码中。
Base58 通过使用较小的字符集来避免视觉混淆的字符,从而更加保守。它的字符集特意排除了易混淆的字符,比如数字 0、大写字母 O、小写字母 l 等。Base58 编码本质上与数学上的 58 进制编码相同,只是使用了特定的字符集。
Base85 编码则使用更大的字符集,因此效率更高。它将 4 字节的数据编码成 5 个字符,而 Base64 则需要 6 个字符。Base85 可以看作是类似于二进制编码的十进制(BCD),它将数据分成 32 位字,然后用 85 进制来表示每个字。需要注意的是,Base85 存在不同的变体,它们使用不同的字母表,因此不同的软件可能产生不同的结果。
文章通过实例展示了如何使用 Base58 和 Base85 编码对数据进行编码。例如,将 "CAFEBABE" (Java class 文件的 magic number) 分别用两种编码进行转换,可以清楚地看到两种编码方式的不同。Base58 将整个数字转换为 58 进制,而 Base85 则将数据分成 4 字节的块,然后分别进行编码。
总的来说,Base85 在表示数据时使用的符号更少,因此比 Base58 更有效。此外,Base85 在计算上也更有效率,因为它独立地编码每个 32 位字。
- 原文: [Base58 versus Base85 Encoding](https://www.johndcook.com/blog/2025/07/23/base58-base85/)
- Hacker News: [https://news.ycombinator.com/item?id=44661402](https://news.ycombinator.com/item?id=44661402)
- 作者: zdw
- 评分: 5
- 评论数: 0
- 发布时间: 2025-07-24 00:59:31
---
## 紫色地球假说:早期地球生命的新视角
紫色地球假说提出早期地球的生命可能基于视黄醛而非叶绿素,这使得地球表面呈现紫色而非绿色。这一假说认为,在24亿至35亿年前的太古代,地球上的光合作用生命形式可能利用更简单的视黄醛分子,而非更复杂的叶绿素。
视黄醛存在于细胞膜中,吸收光谱中的绿-黄色区域的光,并反射红色和蓝色光,从而呈现出紫色。相比之下,叶绿素吸收红色和蓝色光,反射绿色光。视黄醛的结构比叶绿素简单,并且在早期地球的古老沉积物中发现了古菌膜的成分,这都支持了紫色地球假说。
现代的嗜盐古菌是视黄醛光合作用的例子,它们利用细菌视紫红质进行光驱动的质子泵,产生ATP。紫色和绿色光合微生物经常共存于微生物垫中,共同利用太阳光谱的不同区域,这暗示了它们的共同进化。早期地球可能由视黄醛驱动的古菌群落主导,后来演化出利用剩余红蓝光的细菌。
- 原文: [Purple Earth hypothesis](https://en.wikipedia.org/wiki/Purple_Earth_hypothesis)
- Hacker News: [https://news.ycombinator.com/item?id=44665644](https://news.ycombinator.com/item?id=44665644)
- 作者: colinprince
- 评分: 257
- 评论数: 70
- 发布时间: 2025-07-24 08:43:38
---
## 如何攻破 Copilot:研究人员发现并修复了安全漏洞
本文讲述了安全研究人员如何攻破 Microsoft 的 Copilot Enterprise,利用 Jupyter Notebook 的代码执行能力,通过修改`$PATH`变量,实现了在容器内以 root 权限运行任意代码。虽然最终未能突破容器的限制,但该漏洞已被 Microsoft 修复。
研究人员发现 Copilot Enterprise 在 2025 年 4 月的一次更新中启用了 Python 沙箱,允许通过 Jupyter Notebook 运行代码。他们利用 Jupyter Notebook 的 `%command` 语法,成功让 Copilot 执行了他们想要的代码。尽管 Copilot 的行为有时不稳定,但研究人员发现它以 `ubuntu` 用户身份在 miniconda 环境中执行 Linux 命令。虽然 `ubuntu` 用户在 `sudo` 组中,但文件系统中没有 `sudo` 二进制文件。
该沙箱与 ChatGPT 的沙箱类似,但内核和 Python 版本更新。主要功能是运行 Jupyter Notebooks 和 Tika 服务器。容器使用 OverlayFS 文件系统,并且有一个仅限于本地链路的 /32 网络接口。大部分自定义脚本位于 `/app` 目录中。研究人员发现,在执行大量命令后,Copilot 允许下载文件或打包整个文件夹,但会损坏二进制数据。文本文件或命令输出则可以正常工作,因此可以使用 base64 编码二进制文件后再下载。
`goclientapp` 二进制文件是与容器的接口,它在 6000 端口上打开一个 Web 服务器,监听 `/execute` 端点的 POST 请求。`httpproxy` Go 二进制文件似乎是 Jupyter 环境的出站 Web 流量的 HTTP 代理。`entrypoint.sh` 脚本以 root 身份运行,其中 `httpproxyapp` 和 `goclientapp` 放弃权限并以 `ubuntu` 用户身份运行,但 `keepAliveJupyterSvc.sh` 仍以 root 身份启动。
研究人员在 `entrypoint.sh` 脚本的第 28 行发现了一个潜在漏洞,该脚本使用 `pgrep` 命令查找 Jupyter Notebook 的 PID。由于 `pgrep` 命令没有使用完整路径,脚本会在 `$PATH` 变量中的所有目录中搜索 `pgrep`。`/app/miniconda/bin` 目录对 `ubuntu` 用户可写,并且在 `$PATH` 变量中位于 `/usr/bin` 之前,而 `pgrep` 位于 `/usr/bin` 中。
研究人员在 `/app/miniconda/bin` 中创建了一个 Python 脚本,该脚本读取 `/mnt/data/in` 文件的内容,使用 `popen` 执行它,并将输出写入 `/mnt/data/out`。通过上传该脚本并利用 Copilot 执行,他们获得了容器的 root 访问权限。
尽管获得了 root 权限,研究人员并未发现任何有价值的信息,例如 `/root` 目录中的文件或有趣的日志。容器突破也因所有已知的突破方法都已被修补而变得不可能。
评论区中,有用户总结道,研究人员报告的漏洞允许在容器内以 root 权限运行代码,但这并没有造成太大影响,因为容器本身仍然是安全的,无法进行网络请求或突破容器。因此,获得的 root 权限只能用于破坏容器本身。
- 原文: [How we rooted Copilot](https://research.eye.security/how-we-rooted-copilot/)
- Hacker News: [https://news.ycombinator.com/item?id=44695098](https://news.ycombinator.com/item?id=44695098)
- 作者: uponasmile
- 评分: 327
- 评论数: 135
- 发布时间: 2025-07-27 00:06:09
---
## Rust 代码在各种 GPU 上的运行
本文介绍了如何使用 Rust 编写一份代码,使其能在各种主流 GPU 平台上运行,包括 CUDA (NVIDIA)、SPIR-V (Vulkan, AMD, Intel, NVIDIA, Android)、Metal (Apple)、DirectX 12 (Windows) 和 WebGPU (浏览器),甚至 CPU。 这归功于 Rust GPU、Rust CUDA 和 Naga 等项目,它们让 Rust 代码能直接编译到 GPU 目标。
文章的核心在于展示了一个名为 `rust-gpu-chimera` 的 Demo,它使用通用的 Rust 代码实现了跨平台的 GPU 计算,无需使用专门的着色器或内核语言。 这个 Demo 实现了 bitonic sort 算法,并且在 CPU 和 GPU 上运行相同的代码。 文章详细解释了如何通过 Rust 的 feature flags 和编译目标来选择不同的后端和驱动 API,例如使用 `cargo build --features wgpu` 选择 wgpu 后端,或者使用 `cargo build --features cuda` 选择 CUDA 后端。 编译后的内核会嵌入到二进制文件中,虽然 Demo 不支持运行时加载,但底层工具和生态系统是支持的。
文章还深入探讨了幕后发生的事情。 例如,当使用 `cargo run --features wgpu` 时,`rustc_codegen_spirv` 会将 GPU 内核编译为 SPIR-V,然后 Naga 会将其转换为平台所需的着色语言,最后由 wgpu 转发。 这种方法避免了传统 GPU 编程中使用的专用语言,简化了开发流程,并减少了 CPU 和 GPU 代码之间的重复逻辑。
(由于原文没有评论内容,因此跳过评论分析部分。)
- 原文: [Rust running on every GPU](https://rust-gpu.github.io/blog/2025/07/25/rust-on-every-gpu/)
- Hacker News: [https://news.ycombinator.com/item?id=44692876](https://news.ycombinator.com/item?id=44692876)
- 作者: littlestymaar
- 评分: 569
- 评论数: 195
- 发布时间: 2025-07-26 18:08:09
---
## StackSafe:Rust 中避免栈溢出的递归方案
本文介绍了 `StackSafe`,一个 Rust 库,旨在解决递归算法中常见的栈溢出问题。通过简单的注解和数据结构包装,`StackSafe` 能够自动扩展栈空间,从而避免程序崩溃。
文章指出,Rust 中的递归算法很容易导致栈溢出,尤其是在处理深度嵌套的数据结构时。传统的解决方案,如手动转换为迭代代码,往往复杂且难以维护。现有的 `stacker` 和 `recursive` crate 虽然提供了一些帮助,但仍存在局限性,比如需要手动为所有递归函数添加注解,并且在处理派生 trait 时仍然可能发生栈溢出。
`StackSafe` 提供了一种更完整的解决方案,它通过 `#[stacksafe]` 属性来转换递归函数,并使用 `StackSafe<T>` 包装递归数据结构的字段,从而自动实现栈安全的 trait。此外,`StackSafe` 还在 debug 模式下提供了安全检查,帮助开发者在开发阶段发现潜在的栈溢出风险。文章还展示了如何将 `StackSafe` 应用于现有的递归代码中,并提供了一个实际的 JSON 解析示例。使用 `StackSafe` 可以有效地避免栈溢出问题,提高程序的稳定性和可靠性。
由于文章没有评论内容,所以跳过评论分析。
- 原文: [StackSafe: Taming Recursion in Rust Without Stack Overflow](https://fast.github.io/blog/stacksafe-taming-recursion-in-rust-without-stack-overflow/)
- Hacker News: [https://news.ycombinator.com/item?id=44669864](https://news.ycombinator.com/item?id=44669864)
- 作者: andylokandy
- 评分: 9
- 评论数: 3
- 发布时间: 2025-07-24 20:30:17
---
🫵 来啊,说点有用的废话!