編者按:編程語言有上千種,但是流行的不過10來種,那些我們經常使用的編程語言都是誰在什么時候創造出來的呢?Casper Beyer為我們進行了整理。
1800年
Joseph Marie Jacquard教會了一臺織布機讀穿孔卡片,制造出了第一個高度多線程的處理單元。他的發明受到了預見天網(Skynet)誕生的紡織工人的強烈反對。
1842年
Ada Lovelace(英國詩人拜倫之女)對隨后被認定是發布的第一個計算機程序的筆記本高貴和潦草感到厭煩,因為稍微有點不便的是當時還沒有計算機呢。
1936年
阿蘭·圖靈發明了一切,但英國法庭卻并不認可,還判處對他進行化學閹割。
女皇后來寬恕了他,但不幸的是當時他已經過世很久了。
1936年
Alonzo Church(算法理論重要奠基人)跟圖靈一樣也發明了一切,但他是對岸那邊的,并沒有被閹割。
1957年
John Backus創建了FORTRAN語言,這是真正的程序員使用的第一種語言。
1959年
Grace Hopper發明了第一門針對企業面向商業的編程語言,并且把這門語言叫做“面向商業的通用語言(common business-oriented language)”,簡稱COBOL。
1964年
John Kemeny 和 Thomas Kurtz 認為編程太難了,需要回歸本源,他們把自己的編程語言叫做BASIC。
1970年
Niklaus Wirth開發了多種語言,最后流行起來的是PASCAL。他喜歡開發語言。
他還發明了讓摩爾定律變得過時的Wirth定律(軟件變慢的速度比硬件變快的速度更快),因為軟件開發者會編寫出連大型主機也沒法跟上的臃腫軟件。這在后來被證明是正確的——在Electron.js被發明出來后。
1972年
Dennis Ritchie在貝爾實驗室上班上到無聊了,于是他決定寫出帶有花括號的C語言,這門語言取得了巨大成功。隨后他又增加了分段錯誤等對開發者友好的功能來輔助提高生產率。
折騰完這門語言之后他還有時間,于是他跟在貝爾實驗室的伙計決定給C語言做個演示程序,結果他們弄出了一個操作系統,UNIX。
1980年
Alan Kay發明了一門面向對象語言,他把這門語言叫做Smalltalk,在Smalltalk中一切都是對象,甚至一個對象也是對象。沒人真正搞得清楚small talk是什么意思。
1987年
Larry Wall有宗教經驗,他成為了一名牧師,并且把Perl變成了一種教義。
1983年
Jean Ichbiah注意到Ada Lovelace的程序從來都沒有實際運行過,決定以她的名字開發一門語言,但是這門語言還是沒有跑起來。
1986年
Brac Box 和 Tol Move決定在Smalltalk的基礎上制作一個C語言的不可讀版本,他們把這門語言叫做Objective-C,但是沒人弄得清楚它的語法。
1983年
Bjarne Stroustrup回到未來,注意到C在編譯方面花的時間還不夠多,于是他把自己能想到的每一項功能都增加了進去,然后稱之為C++。
每一個地方的程序員都接受了它,因為這樣他們在工作的時候找借口看阿貓阿狗視頻和xkcd漫畫就顯得比較有誠意了。
1991年
Guido van Rossum不喜歡花括號,于是他發明了Python,語法選擇的靈感來源自Monty Python(巨蟒劇團)和Flying Circus(飛行馬戲團)。
1993年
Roberto Ierusalimschy和他的朋友認為自己需要一個巴西本地化的腳本語言,在本地化期間發生了一個錯誤,這個錯誤會把指針從1而不是0開始計算,他們把這門語言叫做Lua。
1994年
Rasmus Lerdorf給他個人主頁的CGI腳本做了一個模板引擎,后來他把自己的資料都放到了網上。
世界決定將這些東西用到一切,Rasmus于是匆忙地將一些數據庫綁定做了進去,并把這門語言叫做PHP。
1995年
Yukihiro Matsumoto不是很高興,因為他注意到其他程序員不是很高興。他創建了Ruby來讓程序員高興。在他創建了Ruby后“Matz”高興了,Ruby社區高興了,每個人都高興了。
1995年
Brendan Eich利用周末時間設計了一門語言,打算用這門語言來為全世界的每一個主流瀏覽器乃至于最終的Skynet都提供動力。他先是找到了Netscape然后說這門語言叫做LiveScript,但在代碼評審期間Java變得流行起來,所以他們決定最好還是用花括號,然后就把它更名為JavaScript。
結果表明,Java卻是一個會讓他們惹上麻煩的商標,JavaScript隨后更名為ECMAScript,但大家還是把它叫做JavaScript。
1996年
James Gosling發明了Java,第一們真正過于繁瑣的面向對象語言,在這里設計模式完全壓倒了實用主義。
于是就誕生了超級有效的管理器提供商、容器提供商、服務提供商、單一管理器提供商模式。
2001年
Anders Hejlsberg重新發明了Java然后把它叫做C#,因為用C來編程感覺要比Java酷。每個人都喜歡這個新版本的Java,因為它完全不像Java。
2005年
David Hanselmeyer Hansen創建了一個web框架叫做Ruby on Rails,從此大家不再記得Ruby和Rails是兩個獨立的東西了。
2006年
John Resig為JavaScript寫了一個幫助庫,每個人都以為那是一門語言,從此從互聯網上拷貝粘貼jQuery代碼就成為了一門職業。
2009年
Ken Thompson 和 Rob Pike 決定做一門類似C那樣的語言,但要有更安全的裝置,還要有更好的賣相,并且把Gopher(囊鼠)作為吉祥物。
他們把這門語言成為Go,并把它做成開源然后另外賣Gopher商標的護膝和頭盔作為收入來源。
2010年
Graydon Hoare也想把語言做成C那樣,他稱之為Rust。每個人都要求馬上用Rust把軟件的每一塊都重寫一遍。Graydon希望做點更有亮點的事情,于是開始為蘋果開發Swift。
2012年
Anders Hjelsberg希望在web瀏覽器里面寫C#,于是他設計出TypeScript,這東西其實是JavaScript,但里面有了更多的Java的東西。
2013年
Jeremy Ashkenas想要像Ruby開發者一樣快樂,于是他創建了CoffeeScript,這東西編譯后像JavaScript但是樣子又更像Ruby。Jerry從來都沒有變得像Matz和Ruby開發者那樣真正快樂。
2014年
Chris Lattner做Swift的時候,其主要的設計目標就是不要成為Objective-C,最后它看起來像Java。
編譯組出品。編輯:郝鵬程。
編者按:編程語言有上千種,但是流行的不過10來種,那些我們經常使用的編程語言都是誰在什么時候創造出來的呢?Casper Beyer為我們進行了整理。
1800年
Joseph Marie Jacquard教會了一臺織布機讀穿孔卡片,制造出了第一個高度多線程的處理單元。他的發明受到了預見天網(Skynet)誕生的紡織工人的強烈反對。
1842年
Ada Lovelace(英國詩人拜倫之女)對隨后被認定是發布的第一個計算機程序的筆記本高貴和潦草感到厭煩,因為稍微有點不便的是當時還沒有計算機呢。
1936年
阿蘭·圖靈發明了一切,但英國法庭卻并不認可,還判處對他進行化學閹割。
女皇后來寬恕了他,但不幸的是當時他已經過世很久了。
1936年
Alonzo Church(算法理論重要奠基人)跟圖靈一樣也發明了一切,但他是對岸那邊的,并沒有被閹割。
1957年
John Backus創建了FORTRAN語言,這是真正的程序員使用的第一種語言。
1959年
Grace Hopper發明了第一門針對企業面向商業的編程語言,并且把這門語言叫做“面向商業的通用語言(common business-oriented language)”,簡稱COBOL。
1964年
John Kemeny和Thomas Kurtz認為編程太難了,需要回歸本源,他們把自己的編程語言叫做BASIC。
1970年
Niklaus Wirth開發了多種語言,最后流行起來的是PASCAL。他喜歡開發語言。
他還發明了讓摩爾定律變得過時的Wirth定律(軟件變慢的速度比硬件變快的速度更快),因為軟件開發者會編寫出連大型主機也沒法跟上的臃腫軟件。這在后來被證明是正確的——在Electron.js被發明出來后。
1972年
Dennis Ritchie在貝爾實驗室上班上到無聊了,于是他決定寫出帶有花括號的C語言,這門語言取得了巨大成功。隨后他又增加了分段錯誤等對開發者友好的功能來輔助提高生產率。
折騰完這門語言之后他還有時間,于是他跟在貝爾實驗室的伙計決定給C語言做個演示程序,結果他們弄出了一個操作系統,UNIX。
1980年
Alan Kay發明了一門面向對象語言,他把這門語言叫做Smalltalk,在Smalltalk中一切都是對象,甚至一個對象也是對象。沒人真正搞得清楚small talk是什么意思。
1987年
Larry Wall有宗教經驗,他成為了一名牧師,并且把Perl變成了一種教義。
1983年
Jean Ichbiah注意到Ada Lovelace的程序從來都沒有實際運行過,決定以她的名字開發一門語言,但是這門語言還是沒有跑起來。
1986年
Brac Box和Tol Move決定在Smalltalk的基礎上制作一個C語言的不可讀版本,他們把這門語言叫做Objective-C,但是沒人弄得清楚它的語法。
1983年
Bjarne Stroustrup回到未來,注意到C在編譯方面花的時間還不夠多,于是他把自己能想到的每一項功能都增加了進去,然后稱之為C++。
每一個地方的程序員都接受了它,因為這樣他們在工作的時候找借口看阿貓阿狗視頻和xkcd漫畫就顯得比較有誠意了。
1991年
Guido van Rossum不喜歡花括號,于是他發明了Python,語法選擇的靈感來源自Monty Python(巨蟒劇團)和Flying Circus(飛行馬戲團)。
1993年
Roberto Ierusalimschy和他的朋友認為自己需要一個巴西本地化的腳本語言,在本地化期間發生了一個錯誤,這個錯誤會把指針從1而不是0開始計算,他們把這門語言叫做Lua。
1994年
Rasmus Lerdorf給他個人主頁的CGI腳本做了一個模板引擎,后來他把自己的資料都放到了網上。
世界決定將這些東西用到一切,Rasmus于是匆忙地將一些數據庫綁定做了進去,并把這門語言叫做PHP。
1995年
Yukihiro Matsumoto不是很高興,因為他注意到其他程序員不是很高興。他創建了Ruby來讓程序員高興。在他創建了Ruby后“Matz”高興了,Ruby社區高興了,每個人都高興了。
1995年
Brendan Eich利用周末時間設計了一門語言,打算用這門語言來為全世界的每一個主流瀏覽器乃至于最終的Skynet都提供動力。他先是找到了Netscape然后說這門語言叫做LiveScript,但在代碼評審期間Java變得流行起來,所以他們決定最好還是用花括號,然后就把它更名為JavaScript。
結果表明,Java卻是一個會讓他們惹上麻煩的商標,JavaScript隨后更名為ECMAScript,但大家還是把它叫做JavaScript。
1996年
James Gosling發明了Java,第一們真正過于繁瑣的面向對象語言,在這里設計模式完全壓倒了實用主義。
于是就誕生了超級有效的管理器提供商、容器提供商、服務提供商、單一管理器提供商模式。
2001年
Anders Hejlsberg重新發明了Java然后把它叫做C#,因為用C來編程感覺要比Java酷。每個人都喜歡這個新版本的Java,因為它完全不像Java。
2005年
David Hanselmeyer Hansen創建了一個web框架叫做Ruby on Rails,從此大家不再記得Ruby和Rails是兩個獨立的東西了。
2006年
John Resig為JavaScript寫了一個幫助庫,每個人都以為那是一門語言,從此從互聯網上拷貝粘貼jQuery代碼就成為了一門職業。
2009年
Ken Thompson和Rob Pike決定做一門類似C那樣的語言,但要有更安全的裝置,還要有更好的賣相,并且把Gopher(囊鼠)作為吉祥物。
他們把這門語言成為Go,并把它做成開源然后另外賣Gopher商標的護膝和頭盔作為收入來源。
2010年
Graydon Hoare也想把語言做成C那樣,他稱之為Rust。每個人都要求馬上用Rust把軟件的每一塊都重寫一遍。Graydon希望做點更有亮點的事情,于是開始為蘋果開發Swift。
2012年
Anders Hjelsberg希望在web瀏覽器里面寫C#,于是他設計出TypeScript,這東西其實是JavaScript,但里面有了更多的Java的東西。
2013年
Jeremy Ashkenas想要像Ruby開發者一樣快樂,于是他創建了CoffeeScript,這東西編譯后像JavaScript但是樣子又更像Ruby。Jerry從來都沒有變得像Matz和Ruby開發者那樣真正快樂。
2014年
Chris Lattner做Swift的時候,其主要的設計目標就是不要成為Objective-C,最后它看起來像Java。
原文鏈接:https://medium.com/@caspervonb/a-brief-totally-accurate-history-of-programming-languages-cd93ec806124
編譯組出品。編輯:郝鵬程。