为什么要发明新编程语言——《梦断代码》读后感

在抽象层叠的最底端,正好在核心内存之上的部分就是汇编语言。汇编语言诞生于半个世纪前,是为了让程序员更方便地操作那些0和1而产生的。以前他们需要编写大量二进制代码,例如101 1000001 100001,而现在则可以使用一些类似"mov" 这样的命令编写具有同等效果的汇编语言指令,变量名也更加易于记忆。你还得手工操作比特,不过现在有了更方便的工具。

 

对于大多数人,汇编语言很难学习和编写。程序员兼评论家艾伦●乌曼( Ellen Ullman )对此曾有妙语云,汇编语言“离机器很近"一即便不在机器脑袋里,也是附在机器耳边说话。汇编语言普适性不强:每种CPU都有自己的不同汇编语言,要在不同的计算机上运行,就得重新编写代码。故此,昔时的程序员开始添加更多抽象层,每一层都离机器更远、离人类更近。

 

20世纪50年代到60年代的十年间,可谓新编程语言大爆发的寒武纪。当时产生的许多编程语言,要么至今仍在使用,要么成了目前主流语言的先祖:例如Lisp、 Cobol、Algol、 Basic 等等。( 这些语言的名称,都很技术化地缩写了,而且通常都用大写形式,我用大小写混拼,好让你的眼睛不至于太累。)第一个被广泛使用的是Fortran--即 “FORmulaTRANslating system (公式翻译系统)"。Fortran 把编写汇编语言的费力过程概括为简短的命令。程序员编写一系列命令一即源代码一然后计算机上运行的一种叫做“编译器"的用户程序把这些命令翻译为机器语言中的“对象代码"。就像是只会挨个读出字母来沟通的人突然之间学会了连续发音- -样。

 

这是一种飞跃,这种飞跃甚至让Fortran的鼓吹者们相信,计算机编程从未取得过如此彻底的超越。关于这项发明,他们写道,将“在本质上消除编码和调试。”他们吹嘘Fortran是“自动编码系统”,因为它取代了机器语言中晦涩的二进制代码或稍具可读性的汇编语言,代之以可读性相对较高的命令序列,如READ、ASSIGN、GOTO和STOP。最初,Fortran看似展示了-幅美景,使得让计算机屈从人类的艰苦斗争一如Fortran的发明者约翰●柏柯斯( John Backus )形容原始编码所言,场与机器的肉搏战”一化为 乌有,让人类可以通过这种魔法般的系统,用自己的语言直接向机器诉其所愿。

 

然而,如同随后几十年里编程领域的其他发明一-样,梦想并未成真。归根到底,Fortran 的全部创见和功用,在解决了一系列问题的同时,又带来了其他问题。在Fortran问世后的十年中,,整个编程领域都成为其成功光环背后的受害者,专家们甚至召开了-次国际性的秘密会议,商讨如何能逃离“这场软件危机"。

猜你喜欢

转载自www.cnblogs.com/deepend/p/12310024.html
今日推荐