第九周web作業:history of grammar
程式語言的發展歷程
1957 - John Backus和IBM發明了FORTRAN語言。關於IBM或FORTRAN並沒有什麼特別好笑的地方。除了,寫FORTRAN程式的時候不繫藍領帶將被編譯器視作是一個syntax error。
..................................................................................................................................................................................................................................................................................................................................................................................
1958 - John McCarthy和Paul Graham發明了LISP。由於冷戰期間的戰略括號資源儲備所造成的巨大成本,LISP從未流行過。儘管欠缺足夠的流行度,LISP(現在叫做 “Lisp”,有時叫“Arc”)
仍然被視作一門有影響力的語言,在關鍵的演算法思想諸如遞迴(recursion)和提升逼格 (condescension)上尤為典範。
.........................................................................................................................................................................................................................................................................................................
1959 - 在輸掉了和L. Ron Hubbard之間的一場打賭之後,Grace Hopper和其他幾個抖S發明了所謂的“面向Boilerplate的全大寫化語言(Capitalization Of Boilerplate Oriented Language,COBOL)”。
多年以後,由於一些被誤導的、性別歧視主義者對Adm. Hopper關於COBOL的工作的報復,在Ruby技術會議上不時會看到一些厭女主義乃至仇視女性的材料出現。
.........................................................................................................................................................................................................................................................................................................
1964 - John Kemeny和Thomas Kurtz創造了BASIC,一個為非電腦科學家設計的非結構化的程式語言。
1965 - Kemeny和Kurtz兩人goto
到了1964。
.........................................................................................................................................................................................................................................................................................................
1970 - Guy Steele和Gerald Sussman創造了Scheme。他們的工作導致了一系列以《Lambda之究極(Lambda the Ultimate)……》為標題開頭的論文發表,並在《Lambda之究極廚房神器》
這一篇中達到了最高潮。以這篇論文為基礎,開始了一個長年累月的、收 視率究極失敗的晚間電視購物節目。Lambda們因為其概念相對難以理解而被大眾所忽視,直到未來的某一天,
Java語言終於讓它們變得有名了起來。通過 不包含它們這件事情。
.....................................................................................................................................................................................................................................................................................................................................................................................
1970 - Niklaus Wirth創造了Pascal,一個過程式的語言。很快就有人開始聲討Pascal,因為它使用了類似“x := x + y
”這樣的語法,而不是更為人熟知的類C語法“x = x + y
”。
儘管存在著這樣的批評,而事實上當時C還沒有被髮明出來。
............................................................................................................................................................................................................................................................................................................
1972 - Dennis Ritchie發明了一把射擊時能同時向前和向後兩個方向發射子彈的絕世好槍。但他對此發明造成的致死和終身殘疾數量感到還不夠滿意,所以他又發明了C語言和Unix。
............................................................................................................................................................................................................................................................................................................
1972 - Alain Colmerauer設計了邏輯程式語言Prolog。他的目標是創造一個具有兩歲小孩智商的程式語言。為了證明他成功達到了這個目標,他展示了一個Prolog程式,
它對於每條查詢都會機智地給出相同的回答:“No”。
............................................................................................................................................................................................................................................................................................................
1973 - Robin Milner創造了ML,一個建立在M&M型別理論基礎上的語言。由ML衍生而來的SML加上了一套形式語義的規範。當被要求給這個形式語義本身 書寫一套形式語義時,Milner的腦子爆掉了。
其他ML家族的著名語言還包括OCaml,F#,和,Visual Basic。
............................................................................................................................................................................................................................................................................................................
1980 - Alan Kay創造了Smalltalk併發明瞭“面向物件”這個詞。當被問到它的含義時,他回答道:“Smalltalk程式本身就是物件。”當被問到物件是由 什麼組成時,他回答到:“物件。”
當再一次被問到這個問題時,他說“看,它從裡到外都是物件。直到你抽出一隻烏龜。”
............................................................................................................................................................................................................................................................................................................
1983 - 為了紀念偉大的先輩程式設計師Ada Lovelace那能夠寫出永遠也無法被執行的程式碼的彪悍技能,Jean Ichbiah和美國國防部創造了Ada語言。儘管缺乏證據顯示有任何重要的Ada程式曾經被完成過,
歷史學家仍然確信Ada是個成功的公益專案,它讓數 以千計的國防承包商免於淪落為與黑幫為伍。
............................................................................................................................................................................................................................................................................................................
1983 - Bjarne Stroustrup把他所聽說過的一切都試圖嫁接到C上,創造出了C++。最後得到的語言是如此地複雜,以至於程式必須被送到未來去讓“天網”人工智慧 進行編譯。編譯時間難以容忍。
天網開展這項服務的動機仍然不為人知,但來自未來的發言人說道:“沒什麼好擔心的,寶貝。”帶著一口奧地利腔的機械口音。有 一些來自坊間的推測,所謂的天網只不過是個自命不凡的緩衝區溢位而已。
............................................................................................................................................................................................................................................................................................................
1986 - Brad Cox和Tom Love創造了Objective-C,宣稱“該語言完美地結合了C的記憶體安全性與Smalltalk的神奇效率”。現在的歷史學家懷疑這兩人其實是誦讀障礙症患者。
............................................................................................................................................................................................................................................................................................................
1987 - Larry Wall在電腦前打了個盹,Larry Wall的腦門子壓到了鍵盤上。醒來之後,Larry Wall深信 ,在Larry Wall的顯示器上出現的神祕字串並非是隨機的,那是某種程式語言之程式樣例的神諭。
那必是上帝要他的先知,Larry Wall,去設計的。Perl語言就此誕生了。
............................................................................................................................................................................................................................................................................................................
1990 - 一個由Simon Peyton-Jones、Paul Hudak、Philip Wadler、Ashton Kutcher和善待動物組織(PETA)組成的委員會創造了Haskell,一種純函式式的、非嚴求值的語言。
Haskell由於使用了Monad這種 較費解的概念來控制副作用而遭到了一些批評意見。Wadler試圖平息這些質疑,他解釋說:“一個單子(Monad)說白了不過就是自函子範疇上的一個么 半群而已,
這有什麼難以理解的?”
..........................................................................................................................................................................................................................................................................................................................................................................
1991 - 荷蘭程式設計師Guido van Rossum為了一次神祕的手術而進行了一次阿根廷之旅。回來後他帶著一個巨大的顱疤,發明了Python,而被數以軍團計的追隨者們加冕為“終生大獨裁 者”,
並向全世界宣佈“要辦到一件事情,只可有唯一的一種方法!”。整個波蘭陷入了恐慌。
............................................................................................................................................................................................................................................................................................................
1995 - 在家門口附近的一個義大利飯館用餐時,Rasmus Lerdorf意識到他吃的那盤意麵正好是一個用來理解WWW全球資訊網的極好模型,而所有的Web應用都應該仿照它們的媒介那樣去做。
在他的餐巾的背後,他 設計出了著名的“可程式設計超連結Pasta(Programmable Hyperlinked Pasta,PHP)”語言。PHP的文件至今仍然保留在那片餐巾上。
............................................................................................................................................................................................................................................................................................................
1995 - 松本“Mad Matz”行弘創造出了Ruby語言,用來闢謠一些意味不明的、有關澳洲將會變成一片由莫霍克族戰士和Tina Turner統治的荒漠的末世預言。該語言後來被它的真正發明者David Heinemeier Hansson重新命名為Ruby on Rails。(關於某個叫松本行弘的人發明了一種叫做Ruby的語言這件事情從未發生過,最好在這篇文章的下一個版本中刪掉。 - DHH表示)
............................................................................................................................................................................................................................................................................................................
1995 - Brendan Eich讀完了歷史上所有在程式語言設計中曾經出現過的錯誤,自己又發明了一些更多的錯誤,然後用它們創造出了LiveScript。之後,為了緊跟 Java語言的時髦潮流,它被重新命名為JavaScript。再然後,為了追隨一種面板病的時髦潮流,這語言又被命名為ECMAScript。
............................................................................................................................................................................................................................................................................................................
1996 - James Gosling發明了Java。Java是一個相對繁冗的、帶垃圾收集的、基於類的、靜態型別的、單分派的面嚮物件語言,擁有單實現繼承和多介面繼承。
Sun不遺餘力地宣傳著Java的獨一無二不同凡響之處。
............................................................................................................................................................................................................................................................................................................
2001 - Anders Hejlsberg發明了C#。C#是一個相對繁冗的、帶垃圾收集的、基於類的、靜態型別的、單分派的面嚮物件語言,擁有單實現繼承和多介面繼承。
微軟不遺餘力地宣傳著C#的獨一無二不同凡響之處。
............................................................................................................................................................................................................................................................................................................
2003 - 一個叫Martin Odersky的醉漢看見了好時瑞森花生醬杯的廣告,展示了某個人的花生醬倒入另一個人的巧克力的場景,他忽然有了個點子。
他創造了Scala,一種結合 了面向物件和函數語言程式設計的語言。這同時激怒了兩個陣營的忠實信徒,他們立刻宣佈要發動聖戰燒死異教徒。
............................................................................................................................................................................................................................................................................................................
來源: https://blog.csdn.net/Ly4wU5giY/article/details/78098998
計算機語言發展圖:
程式設計的未來發展:
會變得更加簡潔、易讀、功能強大,更多的發展預測:https://www.weixin765.com/doc/sysviqqf.html
課後作業:
atan2(y,x):返回其商數參的反正切值
pow(x,y):返回x的y次冪