W. Daniel Hillis的《The Pattern on the Stone: The Simple Ideas That Make Computers Work》(1998年初版,2015年修订)承诺揭示计算机背后优雅、不变的原理。对于90年代末的绝对初学者来说,它或许以平易近人的语调取得了成功。但在2025年,将它作为计算机"简单思想"的指南来阅读,感觉就像在审视一件博物馆藏品——技术上肤浅,选择性过时,并且讽刺地对周围发生的革命视而不见。
最深刻的讽刺在于第7章。Hillis,开创性的Connection Machine超级计算机的架构师,本应在并行计算方面提供大师级的讲解。然而,这一章令人深感失望。他花费大量篇幅讲述阿姆达尔定律(Amdahl's Law)——将其作为理解串行瓶颈的重要工具。但在2025年,谁还在乎?这个悲观的1967年公式,早已被古斯塔夫森定律(Gustafson's Law)取代,并被证明根本上是误导性的,却得到了大量笔墨,而并行计算的真正挑战却无人问津。
在一个被GPU、TPU和大规模AI模型并行推理主导的时代——实践者们要应对内存带宽瓶颈、通信开销、动态批处理、张量并行和流水线并行——纠结于阿姆达尔定律就像在喷气式飞机时代讲授蒸汽机的局限性。对于一个开创了大规模并行计算的人来说,在自己的专业领域写出如此单薄、乏味的章节,几乎是不可原谅的。
为了说明编程基础,Hillis选择了Logo——一种60年代为教育性海龟图形设计的语言。在90年代,这或许对可视化过程和递归有意义。到2015年书籍修订时?难以理解。到2025年?荒谬至极。
Logo是一个小众遗物,对理解内存管理、编译器或高级抽象如何映射到硬件毫无帮助——而这些恰恰是能帮助读者理解计算机实际工作原理的东西。这一章将编程简化为"用海龟画图",把所有重要的概念都抛在一边:栈、堆、指针、编译、优化。这是一堂错失要点的大师课。
第1章("螺母和螺栓")和第2章("通用构建块")占据了近四分之一的篇幅,反复讲述布尔逻辑和逻辑门。虽然这些是基础性的,但呈现方式却异常枯燥乏味。Hillis从未传达为什么布尔代数是正确的抽象,也没有为"逻辑推理可以通过物理开关机械化"这一深刻洞见建立直觉。
此外,覆盖范围令人失望地有限。"通用构建块"几乎没有触及这种通用性的真正含义。这些解释感觉像讲义笔记——机械的背诵,缺乏叙事驱动力或"啊哈!"时刻。对于一本承诺揭示计算机工作原理的书来说,缺失的内容令人震惊:没有对内存层次结构、操作系统、网络、编译器,或支撑实际算法的数据结构(树、哈希表)的有意义讨论。
第5章关于算法的内容竟然完全跳过了最基本的数据结构。如何在不讨论树和哈希表的情况下讨论算法?这些不是可选细节——它们对理解计算复杂性和实际性能至关重要。
第6章关于内存的内容关注压缩和纠错码,而不是数据在计算机系统中实际如何被结构化和访问。同样,这种选择揭示了书籍既定目的与实际内容之间的脱节。
第8章("学习和适应的计算机")和第9章("超越工程")是仅有的还没有完全过期的部分。在这里,Hillis讨论了神经网络、机器学习基础、涌现行为和进化算法。在1998年,这是具有前瞻性的。在2025年,经历了transformer革命、规模定律和现代AI的爆炸式发展之后,这些章节读起来像是肤浅的推测。
它们是这本过时书籍中最不过时的部分——但这是一种微弱的赞美。在一个拥有关于这些主题更优秀、更详细、更新的材料的时代,根本没有理由去阅读Hillis的粗略处理。
2015年再版包含了一篇新前言,Hillis在其中惊叹于本书的持久性,将其归功于不变的基础:"我有机会添加新内容……但令我惊讶的是,我看不到有什么新的基本原理需要添加。"
在2025年,这些话充满了无意的讽刺。此后的十年见证了注意力机制、transformer、扩散模型和大规模缩放定律重新定义计算和智能——这些进步感觉像是真正的范式转变。然而核心文本仍然冻结在1998年,Logo仍在说明编程,阿姆达尔定律仍在主导并行讨论。这本书对永恒性的主张已成为它的墓志铭。
《石头中的图案》靠声誉而非质量流传。它应该深刻的地方肤浅,应该启发的地方枯燥,声称永恒的地方过时。主题选择值得质疑(为什么是关于这些主题的九章?),例子令人困惑(2015年还在用Logo!),写作缺乏火花,无法让真正深刻的思想——如逻辑的机械化或计算的通用性——鲜活起来。
对于想要理解计算机实际工作原理的读者,跳过这本书,去读Charles Petzold的《编码》或Nisan和Schocken的《计算机系统要素》。那些书提供了Hillis只是承诺的东西:对让计算机工作的简单思想的真正洞见。