成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

技術趣聞:十三種編程語言和它們名稱背后的故事

譯文
開發 開發工具 后端
程序員們普遍認為,軟件開發工作當中難度最高的一項任務就是為成果命名。盡管這種情況并不多見,但命名過程中尤其令人頭大的就是面對著一種新型編程語言。下面我們就一起來看看這十三種擁有不同尋常名稱的編程語言和它們背后的故事。

編程語言的名稱通常既公式化又枯燥無聊,但其中也不乏一些令人眼前一亮的字眼。在今天的文章中,我們將一同了解編程語言名稱背后的那些創意與靈感。

[[112550]] 

 

如果玫瑰不叫玫瑰,芳香是否如故?

程序員們普遍認為,軟件開發工作當中難度最高的一項任務就是為成果命名。盡管這種情況并不多見,但命名過程中尤其令人頭大的就是面對著一種新型編程語言。

在一種新型語言的設計工作宣告結束后,隨之而來的命名過程往往遵循以下幾個步驟:以語言本身的特性或者描述為名,采取首字母或者縮寫形式(例如BASIC、COBOL、TCL以及LISP);從現有語言當中派生而來的新名稱(例如C++、C#以及CoffeeScript);又或者直接取自某位對數學或者計算科學作出卓越貢獻的偉人(例如Ada、Pascal以及Turing)。

不過有時候,語言設計得們也會發掘出一些特別的靈感、進而為我們帶來更為豐富的命名方式。下面我們就一起來看看這十三種擁有不同尋常名稱的編程語言和它們背后的故事。

 

 

Python

這款最初發布于1991年的語言人氣極高,它是由荷蘭程序員Guido van Rossum于上世紀八十年代末著手開發的。由他一手打造的這款新型腳本語言派生自ABC編程語言,其誕生源自Rossum在圣誕節假期中的興趣之作。

當需要為這種全新語言選擇名稱時,van Rossum希望選擇一個“簡短、獨特而且略帶神秘色彩”的字眼。他從著名英國喜劇團體Monty Python(巨蟒)身上得到了靈感,他本人也是該劇團的鐵桿粉絲。不知道他當時有沒有考慮過Dead Parrot(死鸚鵡,同樣為英國喜劇團體)這個名稱。

[[112551]] 

 

Java

Java的前身是誕生于上世紀九十年代早期、由Sun公司打造的Green項目,該項目的初衷在于為即將到來的智能設備浪潮——例如互動式電視——建立一套技術支持方案。這款新語言在建立之初被稱為Oak,但Sun公司的律師團很快發現該名稱已經被注冊,這迫使他們必須重新尋找合適的新名稱。

公司旋即召開了一系列會議,并整理出一份簡短的備選名稱清單(經過律師團隊的嚴格甄選),其中包括Silk、DNA以及Java。盡管現在我們已經無法考證當初是哪位仁兄最先推薦了Java這一選項,但它確實受到了大多數與會者的廣泛支持。Java的靈感源自Peet咖啡店(Java即英文的爪哇,以盛產咖啡而聞名),這里是Sun公司的各位工程師們最青睞的休閑場所。

[[112552]] 

 

Forth

Forth語言的開發工作可以追溯到上世紀六十年代,由Charles Moore負責開發。他曾于1968年效力于一家名為Mohasco的家居家具公司,當時公司為他配備了一臺IBM 1130微型計算機外加一臺2250圖形顯示器,希望他能借此進行地毯產品的設計。

由于無法利用FORTRAN語言進行圖形設計,Moore決定自己開發一套編程語言——這就是Forth。他最初選擇的名稱是“Fourth”,代表這是第四代語言。但問題在于,IBM 1130微機只允許在文件名當中包含最多五個字符,所以在去掉了“U”之后、Forth由此誕生。

[[112553]] 

 

Perl

作為一款被稱為“瑞士軍刀”的語言,Perl以其出色的靈活性與強大能力聞名于世。Perl由Larry Wall于上世紀八十年代末所創建。在為其選擇名稱時,Wall表示他希望能在簡短的詞匯中包含“積極的內涵”。他考慮過使用他妻子的名字(Gloria),但后來轉而選擇了“pearl(珍珠)”。

然而當時這個名稱已經被另一款編程語言所占用(即PEARL,‘流程與實驗自動化實時語言’的縮寫),為了避免沖突、他去掉了其中的“A”并由此衍生出perl。值得注意的是,最初peal這個名稱的四個字母全部為小寫,這是受到了Unix全部小寫規則的啟發。不過到了后來,也就是1993年Perl 4版本正式發布時,名稱的首字母開始轉為大寫并一直沿用至今。

[[112554]] 

 

Lua

Lua是由TeCGraf于1993年創建的一款腳本化語言——很多朋友對于TeCGrag可能并不熟悉,它是巴西里約熱內盧天主教大學計算機圖形技術小組的簡稱。Lua以TeCGraf此前所開發的兩款早期語言為基礎,它們分別是DEL(即日期輸入語言)與SOL(即簡單對象語言)。

當一種結合了DEL與SOL的精華與其它諸多功能(例如流控制)于一身的新型語言被創造出來時,開發者為其取名為Lua——也就是葡萄牙語中的“月亮”。理由非常簡單,因為作為其父輩,SOL在葡萄牙語中是指“太陽”。

[[112555]] 

 

Smalltalk

Smalltalk是一個包含多種面向對象編程語言的家族,最初由Xerox公司的帕洛阿爾托研究中心(簡稱PARC)于上世紀七十年代所創建。它的出現給眾多后續出現的編程語言帶來了重大影響,其中包括Java、Python以及Ruby等等。

Alan Kay的學習研究小組一手建立起了Smalltalk,而根據Kay的回憶,當時選擇這個名稱是為了迎合“印歐神話體系”中的設定。在這套理論系統中,像宙斯以及托爾這類名號霸氣側漏的神往往歷盡坎坷、飽經磨難。因此他反其道而行之,選擇了Smalltalk這樣一個聽起來就人畜無害的字眼,平和舒緩的風格也讓人們不至于對這種語言抱有不切實際的期望。

[[112556]] 

 

Logo

Logo是一款由麻省理工學院人工智能實驗室的多位計算機科學家于上世紀六十年代中期開發完成的編程語言,當時主要是為了滿足教學需要。它屬于Lisp語言的一類分支,能夠被用于實現多種編程概念的教學、同時也給Scratch等后續教學型語言帶來了深遠影響。

它的一大主要特點在于利用海龜圖形生成源自命令的輸出結果。Logo這一名稱明顯源自希臘語的“logos”,原意為“字”或者“思想”,開發者希望借此對其與傳統中面向數字的編程語言加以區分。

[[112557]] 

 

Ruby

Ruby由松本行弘于1993年所創建,這款真正面向對象的腳本化語言被作為Perl以及Python的替代方案。與Perl類似,松本希望選擇一個與珠寶相關的詞匯為其命名。在與同事石冢圭樹進行討論之后,最終名稱選項被鎖定在Coral(珊瑚)與Ruby(紅寶石)二者之間。

Ruby最終當選,這一方面是由于松本更喜愛這個名稱、另一方面它同時也是石冢的生日石。松本還明確指出,雖然Perl所代表的珍珠象征著六月、而Ruby所代表的紅寶石則象征著七月,但Ruby并非Perl的繼承者(松本一直認為Perl只是一種‘玩具性質的語言’);相反,Ruby將徹底取代Perl。

[[112558]] 

 

Scheme

在上世紀五十年代末,麻省理工學院的John McCarthy創造出了Lisp。作為歷史最為悠久的早期高級編程語言之一,Lisp很快成為人工智能研究者們最為青睞的編程方案。隨著時間的推移,Lisp的一系列不同分支也爭相涌現,其中就包括Planner與Conniver。

1975年,麻省理工學院的Gerald Jay Sussman與Guy Steele開發出了Lisp的又一款衍生方案,并按照Planner與Conniver的命名慣例為其選擇了Schemer作為名稱。不過這種語言當時運行在由麻省理工學院自主開發的ITS(即非兼容分時系統)系統之上,該系統強制要求文件名由兩部分組成、且每一部分最多只能包含六個字符。有鑒于此,Schemer最終被縮減成了Scheme。

[[112559]] 

 

Scala

Scala語言由Martin Odersky于2001年創建,它身兼函數與面向對象兩種特性。它在編寫時充分考慮到了將開發成果編譯為Java字節碼的需求(在此之前,它也能夠被編譯為.NET代碼)。

Scala這一名稱的確定基于兩個不同理由:第一,由于結合了可擴展LAN、因此它具備很好的擴展(scale)能力;第二,“scala”在意大利語中代表著樓梯或者階梯,這為該語言賦予了美好的雙重含義——幫助使用者通往目標的卓越編程語言。

[[112560]] 

 

Scratch

Scratch是一款教學性編程語言,由麻省理工學院媒體實驗室于2003年開發完成。孩子們可以利用它將屏幕上的各個積木狀模塊(被稱為sprite,即精靈)連接起來,并借此完成程序創建。在它的幫助下,年輕的開發者們能夠創造出屬于自己的故事、電影、游戲、音樂以及一切曾經出現在他們夢中的事物。

這款語言的名稱來自嘻哈電臺主持人通過旋轉并刮擦(scratch)塑膠唱片來創造全新音效與音樂作品的表演方式。

[[112561]] 

 

AWK

任何一位曾經與Unix系統打過交道的朋友肯定也對AWK相當熟悉,這是一種用于處理文本文件的解釋型語言。它最初誕生于1977年,當時被作為Unix grep工具的通用版本使用,隨后于1979年首次成為Unix版本7中的內置方案。

在開發Perl時,Larry Wall受到了來自AWK的諸多影響。與其它大部分編程語言的名稱一樣,AWK同樣是個縮寫詞;但與常見情況不同的是,這一縮寫代表的并非語言本身的作用、而是來自貝爾實驗室的三位開發者的姓氏首字母:Alfred Aho、Peter Weingerber以及Brian Kernighan(上圖)。

[[112562]] 

 

Groovy(精妙,亦有時髦之意——如上狗所示)

時間轉回2003年,當時Java程序員James Strachan希望能用上一款像Python或者Ruby那樣的腳本化語言——但卻要能夠運行在Java平臺之上。這可怎么辦?

答案是自己動手。他設計出的這款新語言能夠將開發成果動態編譯為Java字節碼,用他自己的話說,這是一款“站在全部精妙(groovy)Java代碼的肩膀上而被創造出來的語言”。接下來的工作就簡單了,沒費什么腦子、Groovy這個名稱已然被敲定。

原文鏈接:http://www.computerworld.com/slideshow/detail/146077#slide1

責任編輯:林師授 來源: 51CTO
相關推薦

2015-03-27 10:16:48

編程流行編程語言編程創造者

2013-08-01 09:08:21

編程語言

2013-08-01 09:33:52

編程語言胖手編程編程姿勢

2014-06-24 10:37:03

智能設備新技術

2011-12-12 09:40:49

技術人變化云計算

2012-10-17 13:50:25

2011-12-20 22:30:10

《失控》業務驅動云計算

2011-08-16 10:03:45

Groovy編程語言Web

2018-11-06 15:56:25

西門子工業網絡智能制造

2011-09-26 14:28:28

水果忍者

2021-08-23 15:05:21

PyretJavaScript編程

2017-12-19 07:16:31

編程語言技術軟件開發

2016-12-12 14:19:59

LLVMClangApple

2017-01-15 11:01:56

2014-04-14 10:06:22

.Net 開源

2019-12-06 17:40:39

程序員編程語言JavaScript

2015-05-14 11:00:00

編程語言偉大女性

2015-12-21 09:39:31

2022-09-16 07:32:15

編程計算機命令

2021-09-05 18:26:42

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲免费一区二区 | 黑人巨大精品 | 国产精品日韩欧美 | 日韩精品一区二区三区中文在线 | 欧美精品久久久久 | 羞羞视频网站在线观看 | 国产成人jvid在线播放 | 欧美片网站免费 | 欧美最猛性xxxxx亚洲精品 | 波多野结衣一区二区三区 | 激情五月婷婷丁香 | 天堂在线免费视频 | 日韩免费高清视频 | 成人黄视频在线观看 | 自拍偷拍一区二区三区 | 日韩欧美精品在线播放 | 中文字幕视频在线免费 | 伊人久久成人 | 色婷婷综合久久久中字幕精品久久 | 黄色av大片| 在线国产视频 | 亚洲成人免费电影 | 欧美国产视频 | 日韩精品一区二区三区中文在线 | 亚洲成人精选 | 精区3d动漫一品二品精区 | 国产在线精品一区二区三区 | 日一区二区 | 色婷婷激情 | 91伊人网 | 在线91 | 日韩精品无码一区二区三区 | 国产91丝袜在线播放 | 射久久 | 精品久久久久一区二区国产 | 国产一区二区精华 | 色视频www在线播放国产人成 | 日韩视频在线观看一区二区 | 美女天天干天天操 | 中文在线一区二区 | 欧美日韩电影免费观看 |