Algorithm 版 (精华区)

发信人: ssos (存在与虚无·守拙), 信区: Algorithm
标  题: 1972:图灵奖辞(3)
发信站: 哈工大紫丁香 (2003年02月22日10:15:20 星期六), 站内信件

这里有个次要的原因:在一两点上,现代机器比老式机器更难操纵。首先,我们有了I/O中

断,中断会发生在无法预测和不能再现的时刻。作为对比,老式顺序机器可以看作完全的

确定自动机(Deterministic Automata)。中断是一个戏剧性的变化。许多系统程序员的满

头白发见证了这一点,使我们不能对这个特性所引发的逻辑问题轻描淡写。其次,我们已

经有了多级存储的计算机,带来了管理策略上的难题。虽然在这个领域已是卷轶浩荡,但

仍然让人头疼。实用计算机在体系结构上的变化,确实增加了很多复杂度。

但我称它是次要原因;主要原因是…,计算机已经强大了好几个量级!坦率的说,只要不

存在计算机,编程就根本不会成问题。当我们有了几个差劲的计算机时,编程成了不大不

小的问题。现在,我们有了巨型计算机,编程也早已成了同样巨大的问题。在这种意义上

,电子工业连一个问题也没解决,它只是制造了一大堆----它制造了如何使用它的产品这

样一个问题。换个角度来说,随着现有的机器的能力增强了一超过1千倍,社会上应用这些

计算机的雄心壮志也在成比例增强,于是,可怜的程序员发觉自己的工作在这个紧张得要

爆炸的领域中处于劣势。增长的硬件功能,连同也许是更加迅猛增长的硬件可靠性,使几

年前程序员做梦都不敢想的解决方案成为可能。而现在,几年之后,他不得不去梦想它们

,而且更糟糕的是,他不得不把这些梦想转化为现实!对发觉自己竟置身于软件危机中我

们是不是很惊诧?不,当然不,正如你所猜测的那样,它早已被很准确地预测到了;但小

预言家们的烦恼是,当然啦,是在仅仅5年后,你也确切地知道到他们曾是正确的了。

接下来,在60年代中期,可怕的事情发生了:所谓的第三代计算机出现了。官方文献告诉

我们,它们的价格/性能比曾是主要的设计目标之一。但是你如果把机器各个部件的使用周

期当作“性能”,结果是你不得不把设计做成这样----其性能目标主要是通过内部好像并

无必要的家务活来完成的。如果你的价格定义只是用来购买硬件的费用,结果是你不得不

把设计做成这样,以至于非常难以为之编写程序。例如,order code 可能是如此,以加强

。。。。。。。。。。在很大程度上这些令人不愉快的可能性看起来已经成为了现实。


当那些机器业已发布并且它们的功能规范公诸于众的时候,我们在座的很多人肯定一度非

常痛苦:至少我是这样。唯一合理的预计只能是这些机器将会充斥计算机界,因此更重要

的是它们的设计应该尽可能的好。但这个设计中含了这么严重的缺陷,我感到仅此一举就

已把计算科学阻碍了十年:就在那时候,是我职业生涯中最暗淡的一个星期。现在大概最

让人伤心的是,尽管经历了这么多年的挫折,还有很多人虔诚地相信,一些自然法则告诉

我们说机器不得不是那个样子的。在观察了这种机器的出售状况之后,他们对自己的疑惑

三缄其口,并从中得出不实的结论:毕竟,设计还不是我们想的那样差劲。但细想起来,

这种辩护词,和说因为很多人吸烟所以吸烟一定有益健康相比,其雄辩的说服力简直有异

曲同工之妙。

所以我很遗憾,在计算领域的学术刊物上发表对新机器的评述还没有象对科学论著进行评

论那样形成惯例。在这里,我要招供:在60年代早期,我写了个评述文章想投到<<ACM 通

讯>>上,尽管有几个审阅的同事们敦促,我最终还是没敢,害怕会对我自己或对编辑部带

来太大的压力。这种克制在我这方面是种懦夫行为,我越来越自责。我所预见的压力由于

是缺乏普遍接受的准则所致,虽然我自信我所选择的准则的正确性,但我害怕我的评论会

被冠以“个人口味问题” 而遭拒绝或者抛弃。我仍然认为这种评述将会非常有益并且我期

盼着它们的出现,因为接受它们发表无疑将标志着计算机界的成熟。

我之所以有以上对硬件的关注是因为我认为任何计算工具其最重要的方面之一是它对使用

者们思维习惯产生的影响,而且我有理由相信这种影响比它通常被假定的要强好几倍。现

在,让我们把注意力转移到软件上来。

软件是如此多样化,以致于我必须把自己限定在几个里程碑上。我痛苦地意识到我的选择

是很武断的,我请求你们不要对那些我所赞赏但不能一一提及的诸多成就做任何推测。



最初是英国剑桥的EDSAC。我认为它令人印象深刻就在于从一开始子程序库的概念就在机器

设计和该被如何使用的设计中起核心作用。现在是大约过了25年,计算的面貌已经大为改

变,但这种软件的基本理念仍然和我们在一起,并且那个闭合子程序的概念仍然是程序设

计中的核心概念之一。我们应该把闭合子程序看作最伟大的软件发明之一,它经历了三代

计算机而且将再存活几代,因为它适于实现人的最基本的抽象模式。很遗憾的是,它的重

要性在第三代计算机的设计中被低估了,其中大量显式命名的算术元件寄存器意味着子程

序机制上大的开销。但即使是那样也没扼杀子程序的概念。我们只能祈祷突变到头来不会

被证明可以遗传。 
--

   
<<社会契约论>>是一本好书,应当多读几遍
风味的肘子味道不错,我还想再吃它      

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.230.220]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:5.662毫秒