前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >计算机程序设计艺术

计算机程序设计艺术

作者头像
用户3157710
修改2019-02-13 08:30:39
1.5K0
修改2019-02-13 08:30:39
举报

下载地址:

第一卷

 第二卷

第三卷

高德纳曾在自传开头幽默地发问:“Donald  Knuth真的只是一个人么?”作为现代计算机科学的鼻祖,他完成了编译程序、属性文法和运算法则等领域的前沿研究,出版专著17部,发表论文150余篇(涉及巴比伦算法、圣经、字母“s”的历史等诸多内容),写出两个数字排版系统,同时在纯计算数学领域也有独特贡献。他获得的奖项难以胜数,其中包括ACM Turing Award颁发的图灵奖(1974),美国国家科学奖(1979),日本KYOTO奖(1996),瑞典科学院的Adelskold奖及冯诺伊曼奖。而他对荣誉从不经意,据说那只代表至高荣誉的图灵碗被用来盛放水果。——回首过往,几十年时光如白驹过隙,大约是他自己对做出的成果如此之多也感到吃惊,所以才有以上一问。

        《计算机程序设计艺术》第一卷于1968年推出,可真正能读完读懂的人为数并不多(传比尔•盖茨费时几个月才读完这一卷,然后说,如果你想成为一个优秀的程序员,那就去读这个《基本算法》吧)。高对此解释道:“我知道我的书是不容易读,不过要知道的是,如果不是我精雕细琢地写的话,它们会比现在难读一百倍。”1973年,这部刚出到第三卷的书(计划写七卷)已被计算机界视为“神作”,最初几年就卖出100多万套;译为俄、日、西、葡、匈牙利、罗马尼亚等多种文字后,更创造了计算机类图书的销售纪录。美国计算机协会(ACM)也不淡定了,1974年就将国际计算机界的至高荣誉“图灵奖”授予了他——此时的高德纳年方36岁,他迄今还是这项最年轻图灵奖获得者纪录的保持者。

获此殊荣后,令业界大跌眼镜的是:高宣布暂停写作,理由是现有的计算机排版软件效果太差,破坏了这套书的美。这不免引发作者是否江郎才尽,见好就收的猜测与怀疑——不料辍笔10年的高德纳以三个重量级创造性成果:字体设计系统METAFONT(其价值一言以蔽之:计算机界最懂字体的俩大腕,一是乔布斯,一是高德纳)、文学化编程(充分展示程序设计的艺术性:清晰,美感,诗意),尤其是最具革命性的排版系统TEX(至今仍是全球学术排版的不二之选)给出了强力回应。尽管如此,仍有人说高写完三卷 TAOCP就去研究TeX,其实是害怕写第四卷——不过他对这类风言风语根本不以为意:“一个人要把事情做的完美,只有跟上帝的意图保持和谐,现在上帝要我去写第四卷了。”

搁置手头的重要工作,费时10年专研排版美学打造TEX系统,原因其实很简单:数理图文排版以前一直使用金属活字,70年代以降始有激光照排,然而当时的计算机虽能替代人工排出普通的报纸杂志,但对处理复杂的数理公式却力不从心。高德纳试图为计算机写一个小玩艺儿解决上述问题,TeX的前半部分由此产生。编写过程中,他想参考J•伯克霍夫的Aesthetic Measures(《美学标准》)一书,在哈佛的图书馆几经查阅也未能如愿,之后好不容易在麻省理工学院找到。参考的结果是在TeX里加入一个变量badness,用以衡量一行文字的美感,变量越小文字就越美。

       TEX功能强大、几近无懈可击,其版本号非自然数列,也非年份,而是不断逼近的圆周率(最新版本为3.1415926)——这等于宣告产品接近完美,已经不可能作大的改进了。高为此设置了悬赏奖金:谁找出TEX里的一个bug,就付给其2.56美元,找出第二个5.12美元,第三个10.24美元……依此累加。算法大师不可能不明白指数增长的可怕性(传说中的国王就是玩指数游戏输掉了江山),然而直到今天,他也未能为此付出多少钱。高的另一悬赏是向发现其著作中错误的人发奖,数额依旧是2.56美元始,因为“256美分刚好是十六进制的一美元”。不过寥寥几位获奖者都将有他签名的支票当作文物珍藏,并未打算去银行兑现。

作为开源代码运动最早的倡导者之一,高德纳将Tex 和Metafont无偿贡献给了世界,自己没有从中获取任何报酬。他的想法是,一个人一旦能够喂饱自己并有个安身之所,剩下的就是为别人做点什么了。“我尝试尽我所能的去熟悉电脑科学里的一些领域,然后把这些知识摘要成大家比较容易了解的方式,让没有那么多时间做这种学习的人也能够吸收它们”。为此他常常需要阅读超过20万页的文献,然后将之浓缩为两千页——他无意追赶最流行的内容,而是希望从日新月异的信息中萃取出能够存活到下个世纪的精华。

1992年,高为潜心写作TAOCP从斯坦福提前退休,同时停用电子邮箱(他自1975年就开始玩电邮)。2008年,TAOCP前三卷出版30年后,第四卷在高粉的千呼万唤中终于面世,此际的高德纳已然是满头白发。对计算机科学的倾心热爱,使他为这部作品耗费了毕生心血:从及冠之年直至古稀老人。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.05.29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档