新書推薦:
《
美国小史(揭秘“美国何以成为美国”,理解美国的经典入门读物)
》
售價:HK$
79.4
《
中国古代北方民族史丛书——东胡史
》
售價:HK$
87.8
《
巨人传(插图珍藏本)
》
售價:HK$
705.6
《
地下(村上春树沙林毒气事件的长篇纪实)
》
售價:HK$
74.8
《
偿还:债务与财富的阴暗面
》
售價:HK$
78.2
《
清华大学藏战国竹简校释(壹):《命训》诸篇
》
售價:HK$
92.0
《
封建社会农民战争问题导论(光启文库)
》
售價:HK$
66.7
《
虚弱的反攻:开禧北伐
》
售價:HK$
92.0
編輯推薦:
近观15位计算机大师的生平与成就
理解现代计算技术的发展轨迹
谱写自己的智慧人生
內容簡介:
《奇思妙想:15位计算机天才及其重大发现》立足于现场访谈的第一手记录,介绍了15 位当代最伟大的计算机科学家,描述了他们的生活历程以及工作成果。在书中,他们解释了自己对科学产生兴趣的缘由,回顾了其成长环境和其他科学家对他们的影响,阐述了各自进行基础探索和发现的途径,同时也分享了对未来的看法和主张。
《奇思妙想:15位计算机天才及其重大发现》既适合所有程序员阅读,也适合所有对计算机行业和软件开发感兴趣的人阅读。
關於作者:
Dennis Shasha
纽约大学柯朗数学研究所计算机科学教授,先后获得耶鲁大学理学学士、雪城大学理学硕士和哈佛大学哲学博士学位。除本书外,还著有Database Tuning: A Principled Approach、The Puzzling Adventures of Dr. Ecco 和Codes, Puzzles, and Conspiracy。
Cathy Lazere
自由作家,主要撰写跨国公司财务和技术方面的文章。曾是McGrawq-Hill出版集团的编辑。在耶鲁大学获得文学学士学位,在纽约大学获得工商管理硕士学位。
目錄 :
目 录
第一部分 语言大师:如何与机器对话 1
1 约翰·巴科斯 不断进取的发明家 4
2 约翰·麦卡锡 不走寻常路的常识逻辑学家 16
3 艾伦·C.凯 清晰的浪漫主义梦想 28
第二部分 算法大师:如何快速地解决问题 39
4 艾兹赫尔·W.戴克斯彻 可怕的说明文和最短路径 42
5 迈克尔·O.拉宾 机会的可能性 51
6 高德纳唐纳德·E.克努斯 逐新趣异一线牵 66
7 罗伯特·E.陶尔扬 寻找优秀的结构 76
8 莱斯利·兰伯特 时间、空间和计算 89
9 史提芬·古克和利奥尼德·列文 良解难觅 101
第三部分 架构大师:如何构建更好的机器 115
10 弗雷德里克·P.布鲁克斯 成功带来的愉悦 117
11 伯顿·J.史密斯 与光速赛跑 127
12 W.丹尼尔·希利斯 与生物学的连结 136
第四部分 机器智能的雕塑大师:如何让机器更聪明 147
13 爱德华·A.费根鲍姆 知识的力量 149
14 道格拉斯·B.莱纳特 一场二十年的豪赌 159
后记:下一个25年 173
结语:成功的秘密 176
术语词汇表 179
参考文献 189
內容試閱 :
第一部分
语言大师:如何与机器对话
假设现在第二次世界大战刚结束不久,而你是一位总工程师,负责一项计算机制造计划。你收集了一堆电线和开关,任务是构建出一台机器,以便预测飞机在空中的飞行模式。鉴于当时的技术水平,你只能使用一些不可靠的部件,而且构建的机器要便于装配。这台机器消耗的电力足以供应一个小型工厂。此外你还为它配备了一个足以容纳几千个字符的存储器、加法器、乘法器,以及一套用于计算的指令集。
指令是最不需要操心的问题,它们只需表达清楚,能够完成任务即可。
为了提高效率,你需要让各种指令尽可能与工程设计的细节相适应。这台机器的存储器具有不同的运行速度和能耗,因此你需要设定一个指令组用于在慢速存储器和快速存储器之间传递数据,设定另一个指令组用于在快速存储器中对数据进行四则算术运算或其他操作。这种分组方式无疑不利于编写预测飞行模式的程序,如果将存储器视为一种不分类的资源来进行指令分组,应该会容易不少,但你并不为此担心。在当时,一毛钱就能雇来一打学数学的编程人员,而相比之下,机器本身却非常精致、昂贵且罕见。
五年之后,情况发生了根本性的变化。你吃惊地发现,随著对程序的需求高涨以及硬件成本的降低,程序设计的费用要远高于硬件的购买和维护成本。这种态势一直延续了下来。到了20世纪90年代中期,在大多数企业的软件开发环节中,程序设计的开支已经达到了硬件开支的50倍左右。因此你为自己制定了两个新的目标:缩短程序第一个版本发布所需要的时间,以及让程序更易于改进,以适应客户需求的变化。
你决定修改编程人员与机器沟通所使用的语言:新的语言应当反映出所要解决问题的结构,而不再是反映存储器的快慢层级和算术运算。每一种行业都会根据自身的目的而发明某种语言,例如电影导演会用“开拍”action这个简单的术语来表示“摄像师开始拍摄,演员开始表演,其他人员各就各位”。由于在20世纪50年代中期,计算机主要应用于纯科学和数据处理,因此你更关注的是创造一种数学语言,包括运算公式、求和以及向量数组。为了开拓思路,你拜访了许多研究人员,也了解了许多项目,它们允许程序员输入类似x+y亿这样的数学表达式,然后计算机就能自行编译并且进行相应的运算。
……