冷知识编程语言是如何命名
北京比较好青春痘医院 http://baidianfeng.39.net/bdfby/yqyy/ PhilKarlton曾经说过 在计算机科学的世界中 只有两件事:无效缓存还有命名。 也正是由于后者 我们在技术世界中 有着如何多的奇怪名字的编程语言 在本篇文章,我们一起探索一些常见编程语言的由来,来“揭密”为什么选这样的名,还有这些单词的出处。 Scratch MIT开发的面向孩子的编程语言!孩子们可以通过可视化的形式来操作屏幕上的“精灵”从而创造一些故事,小电影,游戏,音乐以及他们梦想创造的任何东西。这个语言的名字来源于嘻哈音乐DJ,他们会通过手动旋转和刮擦(scratching)唱机上的黑胶唱盘来创造新的声音和音乐。Python 这是荷兰人GuidovanRossum于上世纪80年代末设计的一个语言,现在非常流行,VanRossum在起名的时候,想要一些“短的、独特的、有点神秘色彩的”东西,他是英国著名戏剧团体MontyPython超级粉丝,就从中找到了灵感,用Python命名了这门新语言。 其实MontyPython剧团有个著名的戏剧叫做DeadParrot,似乎没有消息说他想用这个名字来命名新语言。 Perl Perl被誉为瑞士军刀,功能强大而灵活。它是由美国开发者LarryWall在年创立。它只所以选择叫Pearl,珍珠的单词,是因为它觉得这个简短又让人难忘的单词,有着积极的想像力。当时却已经有一个编程语言叫了这个名字,他就将单词改成了Perl,以开源的方式是PracticalExtractionandReportingLanguage,也就是实用提取的报表语言缩写。Pearl一词来自古英文语法Perle,意为珠子或有价值的东shgg,而拉丁语perna的意思是“腿”,延伸意义为看起来像羊腿一样的软体动物名字。 Ruby Ruby是由日本开发者YukihiroMatzMatsumoto在年创建的。受Perl的影响,他也想用宝石的名字来给自己的语言起名,他选择了叫Ruby,他认为也是借了Perl的光,是Perl诞生后的宝石:六月的珍珠,七月的红宝石。Ruby单词的来源于古法语的rubi,意思是微红的宝石,而拉丁语的rubeus意为红色。Matz可不仅仅是想让Ruby成为Perl的继任者,而是一直想替代它。 Java 上世纪90年代初,Sun预感到智能家居设备(如互动TV)的浪潮即将来临,他们开发了一个叫Oak的语言,但是Sun的律师确定这个名字的商标已经被注册,他们只好选个新名字,经过一系列的会议,大家想了很多名字,经过律师的“过滤”,只剩下了三个Silk,DNA,Java。 不知道是谁第一个建议使用Java,但是大家普遍认为灵感来自于Sun的工程师常去一个咖啡店:PetesCoffee,因为Java是印度尼西亚的爪哇岛,那里盛产咖啡。 Forth Forth是CharlesMoore在上世纪60年代设计的一个古老语言,当时他在一个家装公司工作,公司给它提供了一台IBM微型计算机,还带着一个显示卡,公司想让他用电脑来设计地毯! Moore最初想使用FORTRAN,但这个语言没法使用显卡。他只好发明了一个新语言,叫做Fourth,意思是第四代编程语言。可是计算机要求文件名不能超过5个字符,于是他只好把u给踢了出去,变成了Forth Lua Lua是巴西的一个大学所发明的,它基于两个语言:DEL(DateEntryLanguage)和SOL(SimpleObjectLanguage)。新语言把两个语言的优点都结合了起来。 Sol在葡萄牙语中的意思是太阳,那新的语言就叫做月亮:Lua。 Smalltalk Smalltalk是一个面向对象的语言,由施乐帕洛?阿尔托研究中心发明,这门语言给Java,Python,Ruby等很多后来者带来了巨大影响。 AlanKay的小组发明了Smalltalk,正如他所说,这一名字的选取是针锋相对于“印欧神灵理论”的,该理论中任何系统都会被赋予一个它们永远无法企及的、类似于神灵的名字,例如宙斯(与天神同名)和索尔(与雷神同名)。相反地,他选择了一个超级平淡无奇的名字,Smalltalk,以杜绝招致任何过高的期望值。 Logo 这是MIT开发的一个用于教育的一门语言,作为LISP的一个方言,可以用来教授很多的编程概念,它也影响了很多后来的致力于教育的编程语言,例如Scratch。Logo编程时有个小海龟,可以根据用户的指令来画图。 Logo来源于logos,在希腊语中意思是“词”或者“思想”,这个名称和那些面向数字的编程语言区分开了。 Scheme 上世纪50年代,JohnMcCathy在MIT发明了Lisp,这是最早的高级编程语言之一,并且很快变成了人工智能研究者的最爱。 随着时间的推移,很多LISP的方言被开发出来,其中的两个是Planner和Conniver。 年,MIT的GeraldJaySussman和GuySteele又开了一个Lisp的新方言(方言真多!),他们把它称为Schemer,这个Schemer使用了Planner和Conniver的命名规范。 然而,这个语言跑在一个MIT开发的叫做ITS的操作系统上,它的文件名支持两个部分,每个部分都只能有6个字符,于是Schemer只好缩水,变成Scheme。 Scala Scala是个年轻的语言,年由MartinOdersky创建,这是一个既支持函数式编程又支持面向对象编程的语言。被编译以后,它成为了Java字节码,在JVM中运行(之前,Scala可以被编译成.NET的中间代码来执行)。 选择Scala作为名称有两个原因:首先它表示SCAlableLAN这两个词的组合,其次在意大利语中表示楼梯或者梯子,这就暗含着Scala要帮助你不断上升,成为更好的编程语言。 Swift 关于苹果公司为什么选择Swift的名称,目前尚无明确答案,但是有人在Quora上讨论过,它不是以TaylorSwift的名字命名的!我们的猜测是苹果的团队想给人以快速的印象。swift一词的意思是“以极快的速度或快速运动”,可以追溯到史前的swipt,意思是“以惊掠的方式运动”。这种燕状的鸟儿从17世纪起就被称为燕子,并被用作编程语言的徽标。 还有一些有趣的例子: 微软发明了一种类似Java的语言,语法依然是C/C++的风格,叫C#,念“CSharp”。什么含义?和乐理有关。C就是“C大调”那个C,表示某个音,C#就是比C高一个半音。C#发明者的想象力比上面三位都强多了,所以编程水平比较低,写出来的东西爱蓝屏。 Linux:LinuxIsNotUniX,这就有点像GNU了,但是是否属实就有待考证了。 PHP:原名PersonalHomePage,刚开始是RasmusLerdorf为了维护个人网页而开发的,后来功能强大了,改名为PHP:HypertextPreprocessor,相应地含义也变成了超文本预处理器。 RPM:RPMPackageManager,原名是RedHatPackageManager,一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。与Dpkg类似。 Wine:WineIsNotanEmulator,是一个能够在多种POSIX- |
转载请注明地址:http://www.leishene.com/lssb/7359.html
- 上一篇文章: 买无线路由器不想到手就落伍,这些配置不可
- 下一篇文章: 渭南连续4日无新增医院的渭南