original="http://ittopic.gotoip1.com/qee/wordpress/wp-content/uploads/2013/07/74863.jpg" />
英文原文:The Best Name Ever for a Computer Language
我脑子里经常会萦绕一些很无聊的小问题,其中一个就是,这么多的编程语言的名字都是怎么出来的?让我们来给它们归归类。
来自无聊的首字母缩略/简写
这一类别中包括 BASIC 语言,它来自精心设计的“Beginner’s All-purpose Symbolic Instruction Code”。Fortran 语言来自 Formula Translation —— 一种糟糕透顶的语言命名方式,但我可以原谅它,因为它可能是最古老的一种高级计算机编程语言。LISP 语言也类似,只有搞技术的人才想得出的命名方法,取自 List Processing。
Perl 语言这几个字母字面上是意思是 Practical Extraction and Report Language。这是一种在互联网早期盛极一时的编程语言。Perl 语言中方便的字符串操作使得它很适合处理 URL 相关、处理 HTML 的程序。
为创造市场宣传效果而命名
我最喜欢的通用语言,Java,最初叫做 Oak,然后改成 Green。Java 这个名字是最终的选择,之后又由此产生了一系列跟咖啡豆相关的产品名称。我想,从 Green 改名为 Java 是一个很有必要的市场策略。JavaScript 的名字也从 Java 天花乱坠的广告宣传中沾光,尽管它跟 Java 实际上没有多大关系。
Ruby,Smalltalk,和 Python 的取名全都属于这一类。Python 尤其明显:
Python 的名字来自于 BBC 的 70 年代的一个动漫剧《Monty Python’s Flying Circus》。语言设计者想给这个语言取一个短的、独特的、有点神秘的名字。因为他对这个动漫剧很着迷,他认为这个名字非常棒。
很久很久以前,有一种语言叫做 BCPL (Basic Combined Programming Language)。这种语言一个轻量级的版本叫做B语言。当 Dennis Ritchie 基于B语言设计出了一种新语言后,他把它称作C语言。这是因为它很像B,但比B好。在C语言中,两个加号放到一起(++)意思是把一个值加一。于是,C语言的后继者就成了C++(很像C,但更好)。C++的修订版变成了D语言。C语言的另外一个修订版叫C#(这种语言更应该感谢的是 Java)——在音乐符中比C要高半个音程。
世界上第一台可编程计算机
以数学家名称命名的语言
Charles_Babbage_1860.jpg" />
查尔斯-巴贝奇
Pascal 的名字来源于 17 世纪法国著名的数学家 Blaise Pascal。
查尔斯-巴贝奇,一个 18 世纪数学家,他设计(但从未实现)了一个简单的可编程计算机,叫做“the Difference Engine”,因此以他的名称命名了一种编程语言叫做 Babbage。拜伦勋爵的女儿 Ada Lovelace 跟巴贝奇一起共事,她为“the Difference Engine”计算机设计了一套程序。这被认为是历史上第一计算机程序——尽管她从来没有运行过它,debug 过它,或给它设计一个漂亮的用户界面。美国国防部提议以她的名字命名了一种编程语言,这就是 Ada 语言。
Haskell 语言和 Curry 语言的名字都来自于 20 世纪美国数学家 Haskell Curry。他的姓氏还被采用为’currying’编程技术——把有两个参数的函数转变成一个只有一个参数的函数,第二个参数变成固定值。只有 Haskell Curry 自己经常用这个概念。这个概念实际上是来源于 Moses Schönfinkel,但事实上,如果说’currying’听起来有点傻,那’Schönfinkelisation’就有点荒唐了。
以色情明星名字命名的编程语言
现在我要说的就是有史以来最出色的编程语言名字。这也是这篇文章真正的目的。我在大学里学了一点 Linda 语言,这是一种通常被当作一种“语言里的语言”,用来做并行处理。很多年后我才知道 Linda 这个名字来自于色情明星 Linda Lovelace。我想可能是语言设计者搞出的一个小笑话,或是对 Ada 的某种隐喻。我花了整堂计算机课琢磨这个问题。
据我所知,Linda 是唯一一个以色情明星命名的计算机语言。