《Let Over Lambda》的这一章由 Doug Hoyte 撰写,探讨了通过在 Common Lisp 中实现一种类似 Forth 的栈式语言来进行元编程的方法。 作者认为,Lisp 和 Forth 都是语言设计中的“高局部极大值”,与其说是死板的标准,不如说是灵活的“构建材料”。通过利用 Lisp 的宏系统,作者实现了“cons 线程化代码”,将 Forth 的抽象寄存器和字典映射到了 Lisp 的结构中。该实现展示了**语法二元性**的力量——即编程工作量与代码被修改和重用的难易程度成反比。 本章涵盖内容: * **Forth 元编程:** 实现原语(primitives)和即时性(immediacy),从而允许在编译时执行。 * **控制结构:** 通过栈操作从零开始创建 `if`、`then`、`else` 和循环结构。 * **Flubification:** 一种将生成的类 Forth 线程“编译”回原生 Lisp 代码的过程,有效地将一个高度透明的非 Lisp 环境转化为不透明的 Lisp 函数。 最终,本章证明了通过基于宏的抽象,Lisp 可以吸收其他范式,模糊不同语言架构之间的界限,并证实了“任何东西都可以在 Lisp 中编程”。
历史上,潜艇主要作为水面舰艇使用,依靠消耗空气的柴油发动机进行航行,仅在水下攻击时使用有限的电池动力。这种设计导致水下航速缓慢,且需要频繁浮出水面。
核动力的出现彻底改变了海战模式,使潜艇能够无限期地潜伏在水下。这一技术转变也催生了更符合流体力学的“金枪鱼状”船体设计,从而使潜艇航速更快、噪音更低、效率更高。
1960年,美国海军开展了“沙尘暴行动”(Operation Sandblast)以展示这一新能力。当时最大的潜艇“特里顿号”(USS Triton)成功完成了全程水下环球航行。在85天内航行超过36,000海里,“特里顿号”证明了核动力从根本上改变了潜艇的作战方式,使其从依赖水面的舰船转变为真正的深海霸主。尽管“特里顿号”服役时间短暂,但其历史性航行仍是海军史上的里程碑,标志着现代高性能潜艇战的全面开启。
Louis-Francis Ratté-Boulianne 详细介绍了将开源 Mesa Vulkan 驱动程序 RADV(适用于 AMD GPU)移植到 Windows 的持续努力。RADV 是 Linux 上的标准驱动,而 Windows 用户目前只能使用 AMD 的专有驱动程序。
该项目基于 Faith Ekstrand 的初步研究,通过逆向工程与专有的 WDDM2 内核模式驱动程序进行交互。通过记录不透明的厂商特定数据调用,团队成功使 RADV 能够运行包括《反恐精英 2》在内的 3D 应用程序。这一举措改善了跨平台调试,促进了社区贡献,并建立了一个统一的代码库。
尽管取得了进展,但仍存在重大障碍。由于依赖于逆向工程所得的无文档接口,驱动程序非常脆弱,因为 AMD 会频繁更新其专有结构。要实现生产级的稳定性,需要 AMD 提供官方的文档化接口或稳定的中间层。此外,在高性能呈现层(如 DXGI 交换链)方面,还需要进一步的工作。
在 Valve 的支持下,该项目展示了在 Windows 上使用开源 Vulkan 驱动程序的潜力,旨在鼓励行业合作,为该平台未来的图形技术建立一个稳定且可维护的基础。
演示场景(Demo scene)是一种以技术创造力和“动手做”(DIY)传统为定义的亚文化,它孕育出了一系列独特的软件工具。在实验精神、资源利用能力以及偶尔的“作弊”(例如利用预先计算的查找表来绕过硬件限制)的驱动下,这些工具往往具有独特的、非直觉的且视觉上怪诞的用户界面。
这些工具通常分为以下几类:
* **汇编器与提取器:** 这些工具通常基于文本或命令行,允许程序员管理内存、检查 CPU 寄存器,并从现有的游戏中“提取”精灵图或音乐等资源。
* **音乐追踪器(Trackers):** 这类工具起源于 *SoundMonitor* 和 *Ultimate Soundtracker*,采用类似于编程的方法进行创作,并经由 *ProTracker* 和 *Fasttracker II* 等迭代版本不断演进。
* **磁盘复制与实用工具:** 对于该文化的传播网络至关重要。例如 *X-Copy* 等工具用于管理自定义磁盘格式,而其他工具则处理数据压缩(“压缩器”)、ANSI 艺术和字体编辑。
无论是混乱的菜单系统、怪异的审美选择,还是复杂的手动输入方式,这些界面都反映了一个 DIY 时代。在那个时代,技术天才们往往将心血封装在功能强大(尽管并不常规)的软件中,而这些软件正是由数字地下世界的人们为彼此设计的。
社区开发者已大幅提升了越狱 Kindle 及其他电子书阅读器的 Tailscale 使用体验。此前的版本仅限于基础连接,而新更新为高级用户提供了更强大的功能。
主要改进包括:
* **Tailscale SSH:** 默认开启 SSH 访问,无需繁琐的 USB 网络配置。
* **代理模式 (Proxy Mode):** 允许 KOReader 等应用通过 SOCKS5 或 HTTP CONNECT 与你的 tailnet 中的其他设备(如 Calibre 或 Wallabag 服务器)通信。
* **完整 TUN 模式:** 在兼容硬件上提供设备级的网络支持。
对于专注于阅读的用户,新增的专用 KOReader 插件可自动配置这些代理连接,从而更轻松地将内容从内部服务器同步到设备。虽然安装这些非官方工具需要越狱设备并具备一定的技术耐心,但它们将普通的 Kindle 转变为功能更强的联网瘦客户端。无论是用于同步书库还是构建自定义电子纸设置,这些社区驱动的更新都为折腾电子阅读器带来了新的可能。