这十三种编程语言是如何取名字的

作者: Admin 分类: 数码故事 发布时间: 2014-03-24 11:28 ė 6 没有评论

  目前的编程语言很多,发明者如何给新的编程语言取名也是一种学问,国外网站 IT World 最后总结了 13 种编程语言的名称由来,微歌觉得这篇文章非常有趣,于是就把他转载了过来(译文国内有多个网站已经有了)。不过要说明的是,这篇文章中的某些提法和我们过去了解的还是有稍微有点出入,但这似乎不影响我们转载,一是那种说法更真实已难以考证,二是这种东西本来就无伤大雅,稍作了解也就够了。
  原文名称:A method to the madness: How 13 programming languages got their names
  可能程序员们都认为编写代码时给变量取名是件烦人的事,不过他们还需要给另外一个东西取名,那就是新的编程语言。编程语言命名通常有几个规律,如根据特性取缩写(如 BASIC,COBOL,TCL 和 LISP),以已有的语言为基础(如 C++,C# 和 CoffeeScript),或直接是数学和计算机领域杰出人物的名字(如 Ada,Pascal 和 Turing)。有时,设计者取名时更充满想象力。下面是 13 个意味深长的名字,以及它们背后的故事。

  Python
  Python 是 20 世纪 80 年代末由 Guido van Rossum 发明的,初衷据说是为了打发圣诞节时的无聊,1991 年首次发布,是 ABC 语言的继承,同时也是一种脚本语言,目前已经很流行。取名时,Guido van Rossum 认为它应该“短小,独特,还有一点神秘感”,他是英国著名剧团 Monty Python 的忠实粉丝,所以就用 Python 这个名字了。

  Java
  Java 诞生于 20 世纪 90 年代初期,源于 Sun 公司的智能家电程序开发,如:互动电视。最初取名为 Oak,不过 Sun 公司的律师发现这个名字已经被注册了。通过召开多次专门的会议,公司决定从一个包含有 Silk,DNA 和 Java 等候选名字的名单中,最后选择了 Java 这个名字。是谁第一个建议使用 Java 这个名字的已经不得而知,不过普遍猜测是灵感来自 Peet 咖啡店,因为 Sun 公司的工程师们都很喜欢到这里喝咖啡。

  Forth
  Forth 是 20 世纪 60 年代由 Charles Moore 发明的。1968 年,Charles Moore 在一家名为 Mohasco 的家装公司工作,公司只有一台最多 2250 图形显示点数的 IBM 1130 微型计算机,公司要用它来设计地毯,由于 FORTRAN 不能满足要求,所以 Charles Moore 发明了 Forth。最初的名字叫 Fourth,不巧的是 IBM 1130 的文件名最多只能用 5 个字符,Charles Moore 决定省略其中的“u”,最终名称定为 Forth。

  Perl
  Perl 被誉为“瑞士军刀”,以灵活性和高效性著称,20 世纪 80 年代由 Larry Wall 发明。Larry Wall 构思这个语言的名字时认为应该短,并应该充满正能量。他开始是想用妻子的名字 Gloria。不过那里已经有一种语言叫 PEARL,所以他决定用去掉了 pearl 中的 a 作为这个编程语言的名字。值得注意的是,这个名字过去一直都是小写,由于 Unix 文件系统区分大小写,1991 年,Perl 4 发布时,Larry Wall 将首字母改为了大写。

  Lua
  Lua 是 1993 年由 TeCGraf 开发完成的,是一种脚本语言。该语言由 DEL 和 SOL 开发而来,结合了两者的优点,并增加了了流控制等函数特性,葡萄牙语中,Sol 意思是『太阳』,于是 TeCGraf 给这个语言取名为 Lua『葡萄牙语中,Lua 意为月亮』。

  Smalltalk
  Smalltalk 是 20 世纪 70 年代早期由 Xerox PARC 开发的,是面向对象类型语言的一员,后来的 Java、 Python 和 Ruby 中都能见到它的影子。优化后,一个参与开发者 Alan Kay 对其命名提出了新想法,他认为应该遵名字看起来好看的语言(如 Zus 和 Thor)都不长命。所以,最后就取了 Smalltalk 这个看起来平平的名字。

  Logo
  Logo 是 20 世纪 60 年代由 Daniel G. Bobrow, Wally Feurzeig, Seymour Papert 和 Cynthia Solomon 设计的一种教学式语言,也是一种 Lisp 方言,为教学过程中介绍大量程序设计概念提供了便利,对后来的教学式编程语具有深厚的影响,如 Scratch。这种语言的一个重要特征就是“海龟绘图”系统。其名源自“logos”,希腊语中意为“单词”或“思想”,以区别于传统的编程语言。

  Ruby
  Ruby 是 1993 年由 Yukihiro Matsumoto(“Matz”)开发完成的,是名副其实的面向对象的脚本语言,与 Perl 和 Python 比肩。Matz 希望和 Perl 一样,为它取一个宝石的名字。他和同事 Keiju Iahitsuka 在众多名字中筛选后,剩下 Coral 和 Ruby 这两个。最终选择 Ruby 是因为 Perl 的发音与 6 月的诞生石 pearl(珍珠)相同,Ruby 则是 7 月的诞生石 ruby(红宝石),Matz 认为 Ruby 不只甘做 Perl(Matz认为其是“玩具语言”)的后继者,而是要替代它。

  Scheme
  20 世纪 50 年代末,John McCarthy 在 MIT 开发了最早的高级编程语言 Lisp。它迅速成为了人工智能研究领域的首选。随后,许多 Lisp 方言相继诞生,如 Planner 和 Conniver。1975年,Gerald Jay Sussman 同 MIT 的 Guy Steele 联合开发完成了另外一种 Lisp 方言,并根据 Planner 和 Conniver 的取名方式,命名为 Schemer。不巧的是当在 MIT 开发的 ITS 操作系统上运行时,这种系统最多只支持六个字符的文件名,所以改为了 Scheme。

  Scala
  Scala 是 2001 年由 Martin Odersky 开发完成的,既是一种函数式编程语言,也具有面向对象的特性,运行于 Java 平台(早期有.NET平台的实现)。取名 Scala 有两个原因:一是 Scala 是 SCAlable LAN 这两个单词的组合;二是意大利语中 scala 有“梯子”或“楼梯”的意思,蕴含着『更佳的编程语言』的含义。

  Scratch
  第一版的 Scratch 是由麻省理工学院媒体实验室终身幼儿园组 2006 年研发出来的,是一种教学式语言。儿童可以通过拖拽电脑屏幕上的程序模块完成程序设计。它可以用于创作小说、电影、游戏、音乐等等,几乎你能想到的它都能办到,Scratch 的名字源自打碟的声音。

  AWK
  如果使用过 Unix 系统,AWK 对你来说可能再熟悉不过了。它于 1997 年开发完成,是用来处理文本文件的解释性语言,同时也是 Linux 及 Unix 环境中现有的功能最强大的数据处理引擎之一。Larry Wall 开发 Perl 时深受其影响。AWK 这个名字同许多语言名字一样,也是缩写,不同的是,这三个字母是其发明这的名字首字母,贝尔实验室的 Alfred Aho, Peter Weinberger 和 Brian Kernighan(上图)。

  Groovy
  2003 年,Java 程序员 James Strachan 由于需要这样一种脚本语言:同 Python 和 Ruby 相似,但又却能在 Java 平台上运行。于是发明了 Groovy。Groovy 能动态编译为 Java 字节码。正如 James Strachen 所说的那样,“在绝妙的(groovy)Java代码基础上编程”,这个名字就不言而喻了。

本文出自微歌,转载时请注明出处及相应链接。

本文永久链接: http://wego2.com/zhe-shi-san-zhong-bian-cheng-yu-yan-shi-ru-he-qu-ming-zi-de.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Ɣ回顶部