计算机程序设计艺术

下载地址:

第一卷

 第二卷

第三卷

高德纳曾在自传开头幽默地发问:“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年后,第四卷在高粉的千呼万唤中终于面世,此际的高德纳已然是满头白发。对计算机科学的倾心热爱,使他为这部作品耗费了毕生心血:从及冠之年直至古稀老人。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Hadoop实操

工程师的一天

终于赶上了开回帝都的最后一班高铁,F已经是汗流浃背,全身无一处是干的。刚放置好行李,列车就启动了,好险!

1.2K80
来自专栏腾讯数据中心

万人迷

他,是一个万人迷。 低调,奢华,有内涵。走在名叫“微信”的大街上,有一万个人能认出他来;放个屁,能让一万个人同时捂住鼻子。 这一天,是公元2015年5月15日,...

31140
来自专栏VRPinea

8.15 VR扫描:联想VR头显或被命名为Mirage;CNN将VR直播美国超级日全食

38460
来自专栏企鹅号快讯

地表最强14大超级程序员,游戏开发者比肩谷歌天才

虽然我们没办法真正证明谁是在世程序员中谁最牛,但总有开发人员不停讨论这个话题。ITworld网站在各种相关论坛里研究输入设备及编码器,看看有没有谁是大家普遍赞同...

35150
来自专栏大数据文摘

比尔·盖茨的2014年终总结(中英对照版)

11930
来自专栏计算机视觉与深度学习基础

ACM-ICPC2014北京邀请赛感受

        路漫漫其修远兮,吾将上下而求索。         5月16日来到北京 起初的新鲜感不再那么强烈,即使是帝都,也有管理不善的地方,空气也确实不太好...

20480
来自专栏云社区全球资讯抢先看

如何直面“节后综合症”?

节后综合症是人们在大假之后出现的(特别是春节黄金周和国庆黄金周)的各种生理或心理的表现。如在节后的两三天里感觉厌倦,提不起精神,上班的工作效率低,甚至有不明原因...

248100
来自专栏大数据文摘

Google扫描1500万册书后,分析出...

28240
来自专栏VRPinea

艺术与VR的碰撞,细数那些巴塞尔艺术展上的VR作品

406150
来自专栏腾讯数据中心

寻沧海明珠——谷歌海上数据中心

数据中心寻找廉价电源的背后,是日积月累的耗电问题。 “电费开支早晚要比电脑硬件本身更贵” 这是Google 工程师拉兹罗·安德烈·巴罗佐早在 2005 年底接受...

33950

扫码关注云+社区

领取腾讯云代金券