`
jgsj
  • 浏览: 961129 次
文章分类
社区版块
存档分类
最新评论

13种编程语言名称的来历

 
阅读更多

可能程序员们都认为编写代码时给变量取名是件烦人的事,不过他们还需要给另外一个东西取名,那就是新的编程语言。编程语言命名通常有几个规律,如根据特性取缩写(如BASIC,COBOL,TCL和LISP),以已有的语言为基础(如C++,C#和CoffeeScript),或直接是数学和计算机领域杰出人物的名字(如Ada,Pascal和Turing)。有时,设计者取名时更充满想象力。下面是13个意味深长的名字,以及它们背后的故事。

Python

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

Java

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

Forth


于20世纪60年代,由Charles Moore创造。1968年Charles Moore在一家名为Mohasco的家装公司工作,只有一台最多2250图形显示点数的IBM1130微型计算机,不过却要用它来设计地毯,而FORTRAN却不能满足要求,所以他发明了Forth。最初其名为Fourth,不巧,IBM1130最多支持5个字符的文件名,“u”去而“Forth”生。

Perl

被誉为“瑞士军刀”,以灵活性和高效性著称,于20世界80年代由Larry Wall发明。Larry Wall的构思是这个名字应该短,并充满正面意味。想到pearl前,他还考虑过他妻子的名字Gloria。不过已经有一种语言叫PEARL,所以去掉了pearl中的"a"。值得一提的是,这个名字一直都是小写,受Unix文件系统都是区分大小写的影响,1991年Perl 4发布时,Larry Wall将首字母改为大写。

Lua

于1993年,由TeCGraf开发完成,是一种脚本语言。该语言由DEL和SOL开发而来,结合了两者的优点,并增加了了流控制等函数特性,可谓是它们的孩子。葡萄牙语中,sol意为”太阳”,而lua意为“月亮”。

Smalltalk

于20世纪70年代早期,首次由Xerox PARC开发,是是面向对象类型语言的一员,后来的Java, Python和Ruby中都能见到其影子。优化后,参与开发者Alan Kay对其命名时表示应该遵从名字看起来好看的语言,如“Zus”和“Thor”都不长命,这种规律。所以,就取了“Smalltalk”这个平平的名字。

Logo

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

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

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

Scratch

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

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。它能动态编译为Java字节码。正如James Strachen 所说的那样,“在绝妙的(groovy)Java代码基础上编程”,这个名字就不言而喻了。

分享到:
评论

相关推荐

    hreyfan:一种用于移动代码的编程语言

    Hreyfan —移动代码的编程语言Hreyfan是一种分布式系统编程语言,旨在用于程序组件可以在空间上分布和移动的应用程序。 它是一种基于对象的语言,具有用于确保安全通信的面向类型状态的功能,以及用于确保安全使用...

    XML高级编程pdf

    5.3.2 更复杂的编程实例 5.4 DOM和XML的未来 5.4.1 W3C的工作 5.4.2 应用 5.4.3 数据库、模式和DOM 5.5 小结 第6章 SAX 1.0: XML简易API 6.1 事件驱动接口 6.2 SAX的由来 6.3 SAX的高级特性 6.3.1 可选择...

    XML 高级编程(高清版)

    5.3.2 更复杂的编程实例 5.4 DOM和XML的未来 5.4.1 W3C的工作 5.4.2 应用 5.4.3 数据库、模式和DOM 5.5 小结 第6章 SAX 1.0: XML简易API 6.1 事件驱动接口 6.2 SAX的由来 6.3 SAX的高级特性 6.3.1 可选择...

    linux网络编程-宋敬彬-part1

    1.1.2 Linux名称的由来 1.2 Linux的发展要素 3 1.2.1 UNIX操作系统 4 1.2.2 Minix操作系统 4 1.2.3 POSIX 标准 4 1.3 Linux与UNIX的异同 5 1.4 操作系统类型选择和内核版本的选择 5 1.4.1 常见的不同...

    linux网络编程-宋敬彬-part3

    1.1.2 Linux名称的由来 3 1.2 Linux的发展要素 3 1.2.1 UNIX操作系统 4 1.2.2 Minix操作系统 4 1.2.3 POSIX 标准 4 1.3 Linux与UNIX的异同 5 1.4 操作系统类型选择和内核版本的选择 5 1.4.1 常见的...

    XML高级编程 (Extensible Markup Language)

    5.3.2 更复杂的编程实例 5.4 DOM和XML的未来 5.4.1 W3C的工作 5.4.2 应用 5.4.3 数据库、模式和DOM 5.5 小结 第6章 SAX 1.0: XML简易API 6.1 事件驱动接口 6.2 SAX的由来 6.3 SAX的高级特性 6.3.1 可选择...

    XML高级编程

    5.3.2 更复杂的编程实例 133 5.4 DOM和XML的未来 143 5.4.1 W3C的工作 143 5.4.2 应用 144 5.4.3 数据库、模式和DOM 144 5.5 小结 144 第6章 SAX 1.0: XML简易API 145 6.1 事件驱动接口 145 6.2 SAX的由来 148 6.3 ...

    linux网络编程-宋敬彬-part2

    1.1.2 Linux名称的由来 3 1.2 Linux的发展要素 3 1.2.1 UNIX操作系统 4 1.2.2 Minix操作系统 4 1.2.3 POSIX 标准 4 1.3 Linux与UNIX的异同 5 1.4 操作系统类型选择和内核版本的选择 5 1.4.1 常见的...

    Java这个名字的来历与优势

    Java是Sun公司开发的一种编程语言,Sun公司最初的方向是让Java来开发一些电器装置程序,Java名字的由来,实际上是一个有趣的故事。

    第七版<<Java程序设计基础>>第一章授课PPT课件

    Java是美国Sun(Stanford University Network,斯坦福大学网络公司)公司在1995年推出的一门计算机高级编程语言。但是在2009年是Sun公司被Oracle(甲骨文)公司给收购了,所以目前Java语言是Oracle公司所有产品。 ...

    少儿编程启蒙课--画面精美音质好,孩子超爱学

    这也就是我们这套课程《scratch少儿编程——创作的喜悦》名称的由来。 这套课程我们计划一共出三个阶段,目标是帮助孩子完整的理解编程的概念,并且可以独立创作自己想要的作品。目前大家看到的只是第一阶段。 第一...

    linux网路编程 中文 23M 版

    1.1.2 Linux名称的由来........................................ ........ 3 1.2 Linux的发展要素...................................................... 3 1.2.1 U N I X操作系统.................................

    .NET之美:.NET关键技术深入分析

    3.2事件的由来 3.2.1 更好的封装性 3.2.2 限制类型能力 3.3委托的编译代码 3.4.NET框架中的委托和事件 3.4.1 示例说明 3.4.2 Observer设计模式简介 3.4.3 实现示例的Observer设计模式 3.4.4.NET框架中的委托...

    xml入门经典-part3(中文版)

    5.3.2 更复杂的编程实例 5.4 DOM和XML的未来 5.4.1 W3C的工作 5.4.2 应用 5.4.3 数据库、模式和DOM 5.5 小结 第6章 SAX 1.0: XML简易API 6.1 事件驱动接口 6.2 SAX的由来 6.3 SAX的高级特性 6.3.1 可选择...

    单片机仿真器作用介绍

    随着PC机的普及,新一代的仿真器大多数都是利用PC机作为标准的输入输出装置,而仿真器本身成为微机和目标系统之间的接口而已,仿真方式也从初的机器码发展到汇编语言、C语言仿真,仿真环境也与PC机上的语言编程与...

    大数据分析技术基础教学课件3-大数据处理平台Hadoop.pptx

    Hadoop的由来和发展 Yahoo发现GFS和MapReduce的巨大潜力,将Doug Cutting招入公司,并成立了专门的团队 Nutch项目的分布式运算部分被单独剥离出来,成为Apache的一个子项目Hadoop Hadoop项目的名称来源于Doug ...

Global site tag (gtag.js) - Google Analytics