《编程之魂:与27位编程语言创始人对话(预订中,估价)》图书详细资料 ...

目录

序 I
前言 III
1 C++ 1
Bjarne Stroustrup
1.1 设计决策 2
1.2 使用语言 5
1.3 OOP和并发 8
1.4 关于未来 11
1.5 有关教学 14
2 Python 17
Guido van Rossum
2.1 Python方式 18
2.2 优秀的程序员 23
2.3 多种Python 27
2.4 权宜之计和经验 31
3 APL 35
Adin Falkoff
3.1 用纸和笔设计 36
3.2 基本原理 38
3.3 并行 43

译者序

编程语言是人们为了描述计算过程而设计的一种具有语法语义描述的记号。没有编程语言支持的计算机世界简直难以想象。由于编程语言具有如此重要的基础地位,从计算机问世至今的大半个世纪中,人们一直在为创建更好的编程语言而不懈努力。各种各样的编程语言及其方言层出不穷。而在成千上万种编程语言中,成功者是寥若星辰,其中广泛使用的语言甚至可以说是屈指可数。显然,每一种成功的语言背后都有其独到的设计思想和理念,契合了某一类特定的应用需求。
拿到这本书的英文版时,我又习惯性地看了一眼TIOBE的编程语言榜单:本书涉及的各种语言几乎每个月都赫然在列,其中很多语言更是在榜单上xxxx。说出来你或许会对此感到惊讶,我每次都要看一看榜单上BASIC语言的排名。因为整整20年前,我{dy}次接触到BASIC语言,当时觉得它非常神奇,后来我用它来编写DOS程序,在使用过程中越发对它的设计者崇拜不已,心中常常在想,这是怎样的一位智者啊。后来,我又学习和接触到了更多的语言,几乎每种语言都有着鲜明的特色和独有的风格。每一种语言的背后,都闪耀着编程语言设计大师们智慧的光芒。我想,很多读者、IT人士都和我一样,都希望有机会当面请教这些{sjj}的大师,直接聆听这些领域中最xx的声音。
很显然,并不是每个人都有机会跟大师对话,即便是大师已经走到了你的身边(虽然这样的机会微乎其微)。比如,C++之父Bjarne Stroustrup 2002年就曾造访中国,并在北京中关村进行了一系列公开活动,而中国的大多数对C++感兴趣的IT人士,即便是身处中关村也很难有机会同他当面交流(非常遗憾,我也身处此列)。要同17种语言的创建者进行xxx对话,对绝大多数人来说,几乎没人敢有此奢望,因为这不啻于天方夜谭。
机会终于来了!不过,是以另外一种方式与大师面对面:《编程之魂》一书将17种语言的创建者请到了读者身边,让读者从对他们的深度访谈中,了解到语言背后的故事,领悟语言设计的动机,并切实体会到大师们的个性和风采。众所周知,大凡超凡之人,往往都极具个性,甚至会有一些偏执和怪异,毫无疑问,这本身就彰显出无穷的魅力。更重要的是,读了这些访谈原文之后,读者会对相应的语言有着更深入的理解。
在本书的翻译过程中,我经常会产生这样的期盼:在这个不同肤色、不同种族的编程语言创建者群体中,应该有我们黑头发、黄皮肤的中国人!由于历史和现实的原因,中国的程序员能够接触到的编程语言{sjj}大师少之又少,而中国人能够成为编程语言{sjj}大师尚需待以时日。我真心地希望中国IT界的朋友,特别是年轻的IT精英能够勇于承担此任。为了这{yt}的早日到来,我想,每一个抱有IT梦想的朋友,都应该好好研读一下这本书。或许你就是下一个Bjarne Stroustrup!
本书翻译期间得到了电子工业出版社博文视点公司徐定翔、白爱萍等编辑的热心帮助。同时,我要感谢我的家人对我的支持和默默无闻的奉献。由于译者水平有限,加之时间较紧,虽已尽力避免错误,难免仍有疏漏,恳请广大读者将意见和建议发至:bityhz001@sina.com,不胜感激。
闫怀志
2010年春于北京中关村
2010年3月

前言

编写软件是件难事——最起码,编出来的软件如果要经得住测试、时间和不同环境的考验,确实很难。在过去的50多年里,为了让编写软件变得更容易一些,不仅软件工程领域为此在不懈努力,编程语言也被赋以重任。但是,真正的困难究竟是什么呢?
大多数书籍和论文在回答这个问题时,都将焦点集中在软件体系结构、需求之类的话题上。不过,如果困难在于编写程序本身,又会怎么样呢?换句话说,如果我们把自己当成是更具交流(语言)色彩的程序员,而不是更具工程色彩的程序员,又该如何呢?
小孩子两三岁学说话,五六岁学读书写字。我从来没见过哪个大作家是成年以后才学习读书和写字的。你也没见过晚年才开始学习编程的xx程序员吧?
如果孩子比成人更容易学习外语,这对我们学习编程有什么启发呢?要知道,编程这事恰恰是和新语言密切相关的!
假如你不知道某件东西在新学的外语中怎么说,你会使用自己熟悉的词汇来描述它,并希望别人也能理解你的意思。这不正是我们编写软件要做的事吗?我们使用编程语言来描述脑海中的对象,并希望编译器或解释器也可以理解。如果行不通,我们再回头检查脑海中的设计,找出被忽略或有偏差的部分。
带着这些问题,我决定开展一系列调查:为什么要创建某种编程语言、它在技术上如何开发、如何教授和学习,以及它如何顺应时代发展等。
我和Shane极为荣幸地邀请到了27位杰出的设计师与你分享他们的智慧和经验。
在这本《编程之魂》中,你会发现构建成功编程语言所需的思想和步骤,它广受欢迎的原因,以及如何处理程序员常见的问题。因此,如果你想深入学习设计成功编程语言的思想,本书会对你大有帮助。
如果你想找到有关软件和编程语言激动人心的想法,就需要一支荧光记号笔,甚至两支,因为我保证,你会发现这本书处处闪耀着智慧的光辉。
—Federico Biancuzzi
材料组织结构
Organization of the Material
在你浏览本书时,各章的排序方式会为提供各种充满争议的不同观点。请仔细品味这些采访内容,并时常回味、反思。
第1章,C++,采访Bjarne Stroustrup。
第2章,Python,采访Guido van Rossum。
第3章,APL,采访Adin D. Falkoff。
第4章,Forth,采访Charles H. Moore。
第5章,BASIC,采访Thomas E. Kurtz。
第6章,AWK,采访Alfred Aho、Peter Weinberger和Brian Kernighan。
第7章,Lua,采访Luiz Henrique de Figueiredo和Roberto Ierusalimschy。

序言

编程语言设计是个魅力无穷的话题。很多程序员认为自己能设计出一种编程语言,可以比现在使用的更好;很多研究者也觉得自己能设计出这样的语言。这些人的自信本来无可厚非,不过他们的设计最终多被束之高阁。你不会在这本书里找到它们。
编程语言设计是件严肃认真的事情。语言设计中的小错误,可能会导致使用该语言编写的实际程序出现大问题。而且,即使是程序中的小错误,也可能会造成极其严重的后果。软件的使用范围很广,而其脆弱性使得恶意软件攻击频繁发生。这已经为全球带来了数十亿美元的经济损失。本书会反复讨论编程语言的防危性(safety)和安全性(security)这个主题。
设计编程语言是一种前途莫测的冒险之举。很多语言是为通用应用程序设计的,并且有众多组织的支持和倡导,却只能在受众很少的细分市场(niche market)内勉强立足。与此相反,设计用于有限用途或局部使用的那些语言,也可以赢得大批拥趸,有时候甚至会用于连设计者都从未想到的环境和应用中。本书集中讨论后一类语言。
这些成功的语言有一个共同的显著特征:它们都来自个人或志同道合的爱好者小团队的创意。它们的设计者是程序设计的宗师(mastermind,大师)级人物;他们具有足够的经验、远见、能力、耐力和{jd1}的天分,能够通过语言的最初实现、基于实战经验的演变,以及实际使用(事实上)和标准流程(法律上)这两方面的标准化,推动语言不断发展。
在本书中,读者将会和这些宗师们xxx对话。他们每个人都会接受深度访谈,讲述有关语言的故事,以及语言成功背后的原动力。他们坦陈成功取决于正确决策和好运气,二者缺一不可。{zh1},我们相信出版访谈原文,可以让您深入了解设计者的个性和动机,这和设计语言本身一样具有无穷的魅力。
—Sir Tony Hoare
Sir Tony Hoare,美国计算机学会图灵奖和京都奖(Kyoto Award)获得者,50年来一直是计算算法和编程语言研究的{ldz}。他在1969年撰写的{dy}篇学术论文,系统地研究了证明程序正确性的思想,并提出编程语言设计的目标之一是更易于编写正确的程序。他非常高兴地看到该思想已在编程语言设计者中间逐渐传播开来。

0人  0% 用户平均打分
0人  0%
0人  0%
0人  0%
0人  0%
( 1条评论-- 点击查看讨论 )
郑重声明:资讯 【《编程之魂:与27位编程语言创始人对话(预订中,估价)》图书详细资料 ...】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——