printf(\"goodbye, Dennis\");
转载自:http://select.yeeyan.org/view/20180/242262
现代计算之父丹尼斯•里奇于10月8日去世,享年70岁。 再见,丹尼斯!
每当轻轻敲一下某部i什么玩意儿,你就在触摸史蒂夫·乔布斯的一小部分。他非凡的想象力对于苹果公司凭幻想做出来的产品有重大影响,特别是最后这14年间,乔布斯重新掌握这家他所创办的公司的方向之后。乔布斯之死看起来就像宗教界的大人物之死。然而,他创造出来的全部技术奇迹,连同苹果公司的竞争对手卖出的另外十亿部手机,也只不过是些精致的接收器,都不是为了丹尼斯·里奇。他们应该把数字灵魂即操作系统和令他们如此具有活力的程序归功于他。
丹尼斯·里奇在1970年代早期创造了C程序设计语言,从根本上改变开发创建软件程序的方式。C语言的流行是由健壮性和效率结合而成的。至关重要的是,C语言细小。用计算机行家的话来说,这意味着,每次在计算能力供应不足的时候,C语言消耗很少,同时让程序员几乎不费力就能直接控制硬件。它也是可移植的。给一台计算机编写的C程序修改后可以运行在另一台计算机上。(虽然这不总是轻而易举的,但却是可能的。)
如果那还不足于改变世界的话,那么,在(和肯·汤普森以及其他人共同)开发Unix操作系统的过程中,里奇先生也起着重要的作用。始于1969年的Unix项目最初打算做的是以比较简单的方式开动笨重的大型主机。Unix系统一开始在教育学术机构和政府部门建立了基地(巴贝奇1980年代在大学里第一次使用的就是Sun公司的Unix工作站)。接着,在1990年代,国际互联网突然爆发。1991年,芬兰软件工程师莱纳斯·托瓦尔兹重新改造Unix系统以适应互联网时代。结果得到Linux系统,这个系统运行起来几乎与其先祖一样,而且同样可以运行自由和开源软件,但却消除了知识产权方面的不良影响。
大部分现代软件代码采用C语言进一步发展演变而来的衍生语言编写。这些语言包括C++、(苹果公司偏好的)Objective C和(对手微软公司所爱的)C#。数字时代的另一种主要语言Java实质上也应该感谢里奇先生的发明创造。与此同时,类Unix系统支持数以亿计的苹果和安桌移动设备、大部分互联网公司的服务器运作和十亿个像数码录像机和音乐播放器一样的微小装置。当然存在替代品——其中包括微软公司的Windows系统、诺基亚的Symbian系统或者高通公司的BREW——不过,他们伸手可及的范围相形见绌。
里奇先生温和谦逊——并且精心地致力于研究工作,他以永不衰退的热情追求事业,直到几年前退休为止。要不是由于他的兄弟姐妹悼念他去世而添加的一则短文,他在贝尔实验室的个人主页自2006年以来就没更改过,这说明他是一个奇特的人,很可能像主动提供对研究的深刻见解一样,张贴些同名同姓者的杂碎。
他受大众欢迎的著作就像他的编码一样简朴、高效——而且有很大影响力。30多年来,他与布赖恩·克奈汉合著的教科书《C程序设计语言》,一直是有关C语言的一切资料的权威来源。这本书给学习C语言编码的人介绍的第一个程序如下:
main ( )
{
printf("hello, world");
}
以上程序使计算机显示"hello, world"这句话。(克奈汉先生在美国电话电报公司一份早期的内部手册中也曾提出这个短语和任务。)耐心引导读者入门学习语言基础,并逐步进入难度较大的程序设计工作,逾越当时枯燥无味的、过度使用术语的手册。成千上万随之而来的计算机图书都带有里奇先生的标记。
里奇先生和乔布斯先生在关键时刻相遇。当乔布斯于1985年被赶出苹果公司后创办NeXT公司时,他并没有从零开始创建一个操作系统。他的机器运行一种Unix。当他凯旋而归,回到苹果公司,并在1996年收购NeXT之后,乔布斯放弃努力,停止苹果公司正在进行中的使Mac OS现代化的工作。他反而选用了一种Unix版本(并给Mac OS加上"X"),所有的Mac自此就依赖于这个操作系统。给iPhone和iPad注入生命的iOS操作系统同样如此。然而,对于里奇先生所有开创性的贡献,以及他在使苹果的小装置成为现在这样子的过程中所起的关键作用,他附带地受到了全球媒体的注意完全微不足道,吸引住媒体的仍然是计算机行业中最完美的爱出风头的人物。
所有操作系统都知道它们生于何时。操作系统的内部时钟从那时起开始计数,因此能够计算未来的日期和时间。不清楚是里奇先生还是汤普森先生把所谓的Unix起始时间设置为1970年1月1日。那一刻结果被认为是(UNIX)纪元。里奇先生促成此事。而且藉此开创了新纪元。