今天早上,互联网上传来了消息:丹尼斯·里奇(Dennis Ritchie)去世了。
里奇博士不像史蒂夫·乔布斯那样拥有主流的追捧者,但他对我们现在生活的计算机世界的创造,甚至是对其美学的贡献,都可以获得更多的赞誉。几乎不可能找到一个不直接受益于里奇工作的个人计算产品或范式。
在上世纪70年代那个意气风发的年代,丹尼斯·里奇在贝尔实验室创造了 C 编程语言,并与他人共同开发了 Unix 操作系统。在 C 和 Unix 出现之前,计算机世界呈现出一种难以想象的碎片化状态——不存在可以在多种计算机上运行的软件。一切都是为特定平台定制编码的,而且每个平台在“一个字节有多大?”这类基本事物上都有着截然不同的标准。
我们现在拥有的一切——互联网服务器、电话骨干网、我用来输入这段文字的键盘中的微处理器——都源自里奇的工作。你现在正在 Drupal 驱动的网站上阅读这篇文章;Drupal 是用 PHP 编写的,而 PHP 又是用 C 编写的。(除非你是在打印机上打印的这篇文章,而打印机的内部是用 C 编码的。)在这里,请看一下这张表格,其中列出了流行软件的实现所使用的编程语言。注意 C 这一列以及旁边的 C++(作为增强版 C 开发的)这一列是多么地拥挤。
为了不让他的贡献显得枯燥、不为人知,我将完整引用丹尼斯·里奇在 1994 年为《Unix 仇恨者手册》(Unix-Haters’ Handbook)撰写的“反序言”。里奇是对的。
来自:dmr@plan9.research.att.com 日期:1994年3月15日 星期二 00:38:07 EST 主题:反序言 致本书的贡献者们: 我屈服于你们在序言中提供的诱惑:我确实认为你们是心怀不满、爱慕虚荣的纪念品收藏家。你们深情回忆的那些系统(TOPS-20、ITS、Multics、Lisp Machine、Cedar/Mesa、Dorado)不仅已经过时,而且正在从下方滋养着它。 你们的判断不敏锐,而是被比喻所蒙蔽。在序言中,你们首先遭受酷热、虱子和营养不良的折磨,然后成为古拉格的囚犯。在第一章中,你们轮流被病毒感染,被毒瘾折磨,被基因膨胀所困扰。 然而,你们那个缺乏清晰设计的牢笼却继续囚禁着你们。如果它没有坚固的地方,这怎么可能呢?理性的囚犯会利用薄弱环节,从混乱中创造秩序:相反,像自由软件基金会(FSF)这样的集体,通过建造与现有牢笼几乎兼容的牢房(尽管功能更多)来 vindicate 他们的狱卒。拥有三个麻省理工学院本科学位的记者、微软的研究员和苹果公司的高级科学家可能会志愿者说几句话,谈论他们被转移到的监狱的规定。 你们对可能性的看法根本不纯粹:有时你们想要和你们现在拥有的东西一样,但希望是你们自己完成的;有时你们想要一些不同的东西,但似乎无法让人们使用它;有时人们想知道为什么你们不闭嘴,告诉人们去买一台装有 Windows 的 PC 或一台 Mac。没有古拉格或虱子,只有一个由《索尼克 the Hedgehog》设定其智力基调和互动风格的未来。你们声称寻求进步,但你们主要以抱怨而告终。 这是我的比喻:你们的书是一块塞满了恰当观察的布丁,其中许多观察都构思得很好。就像粪便一样,它包含足够未消化的营养块来维持一些生命。但它不是一块美味的派:它散发出太多的蔑视和嫉妒的味道。 祝你们胃口好!