為什麼圖靈獎獲得者戴克斯特拉痛恨 BASIC 語言

2021-01-10 開源中國

文章標題:為什麼計算機科學界最高榮譽圖靈獎獲得者戴克斯特拉先生如此痛恨BASIC語言

戴克斯特拉先生是一位經常會被人們拿來引述的著名計算機科學家,人們談論最多的是那些被他挑破的讓人難以接受的事實真相。經常被人反覆提到的一個就是他對BASIC語言的痛斥,但往往人們談論這件事情時都忘了提到當時的背景——

對於一個之前接觸過BASIC語言的學生,你基本上不可能教會他如何正確的編程:因為作為一個程式設計師苗子,他們已經腦殘,無可救藥。

戴克斯特拉先生的這番言論是來告訴大家「如何看出事實背後可能是對你有害的真相」——對有些事實人們廣為接受,所有沒有人思考它們,或不屑一顧,或 避而不談。戴克斯特拉先生對於這個問題給出的答案被證明極具轟動性。他用這種方式非常有效的挑起了爭論,時至今日我們仍在討論。

人們經常會忘記,在1975年,那時的編程跟我們如今有很大的不同。戴克斯特拉先生斥責的Dartmouth Basic——這是一種享有榮耀的彙編語言,它不是我們如今使用的BASIC語言——

變量名稱只有一個字符,或外加一個數字 儘管有For語法可用,但循環,break,以及其它邏輯都用無約束的goto語句實現。 空格在表達式間可有可無。 有子程序。子程序通過行號調用或通過return轉向。 所有的參數都通過全局變量來傳遞。 26個用戶自定義函數可以排列成FNA—FNZ,裡面可以有一行代碼。 if語句被限制在一行上。

這樣的限制我可以繼續列下去,但事實非常明顯:你很難用它寫出可讀性好,易於理解的程序。我們如今想當然應該有的一些語言特徵它都沒有。這種狀況一直等到BASIC之後的語言發展起來才結束,成為我們如今熟知的程式語言。

當我們在學習第一種程式語言時,你可能會一直在用其它語言風格進行編程(「你可以用任何語言寫出FORTRAN風格代碼」)。程式設計師的成長過程中最難的不是如何獲取新知識,而是如何拋棄陳腐的舊習慣。

學會如何小心的堆起一灘爛泥,這對你寫出結構化的程序不會帶來任何幫助。即使今日,你也能很容易的發現有些人被教育了basic的現代變體——儘管他們對這種basic老祖先知之甚少。後繼者對此有很大責任。

編程很難。荒誕的語言特徵讓它變得更難,這無助於初學者,同樣也無助於專家。戴克斯特拉痛恨basic,其實你也應該痛恨它。殘酷的是我們只記住了戴克斯特拉先生尖銳的批評,但卻忘了他對計算機編程卓著的貢獻——這完全是另外一個話題了。

[英文原文:Why did Dijkstra Hate Basic? ]

相關焦點

  • 圖靈、圖靈機、圖靈獎
    圖靈獎(Turing Award)自1966年首次頒發,每一年的圖靈獎一般在下一年的3月下旬頒發;截止至2019年的圖靈獎,共授予了72位個人。圖靈獎的獎金在設獎初期為20萬美元,1989年起增到25萬美元。獎金通常由計算機界的一些大企業提供(通過與ACM籤訂協議),目前圖靈獎獎金由Google公司贊助,為1,000,000美元。
  • 大咖觀點丨圖靈獎獲得者曼紐爾•布魯姆:打造有「意識」的計算機
    光明網天津5月17日電(記者 李政葳 王春曉)在第三屆世界智能大會上,圖靈獎獲得者、美國國家科學院院士、美國國家工程院院士、美國藝術與科學學院院士、卡內基梅隆大學教授曼紐爾•布魯姆表示,1980年,認知神經科學家Bernard Baars提出了全球空間模型的概念,基於這個模型可以開發出更靈活、更高效的機器
  • 圖靈獎獲得者介紹 | 高德納
    1974年,他獲得了圖靈獎。在高德納聞名天下的時候,他突然暫停了寫作,理由是現有的計算機排版軟體效果太差,破壞了這套書的美。這不免引發作者是否江郎才盡,見好就收的猜測與懷疑——不料輟筆10年的高德納以三個重量級創造性成果對質疑作出回應:字體設計系統METAFONT、文學化編程以及最具革命性的排版系統TeX。
  • ...網】圖靈獎獲得者、中科院院士姚期智教授受聘為同濟大學名譽教授
    【光明網】圖靈獎獲得者、中科院院士姚期智教授受聘為同濟大學名譽教授 來源:光明網   時間:2020-08-12  瀏覽:
  • 悼念圖靈獎得主、ML語言之父Robin Milner
    據外媒消息,1991年圖靈獎得主Robin Milner於2010年3月20日(他妻子葬禮後的第三天)在英國劍橋辭世,享年76歲。他是他是英國皇家學會成員,ACM會士,美國工程院外籍院士。1973年回到英國愛丁堡大學,在愛丁堡大學任職期間,他開發了函數式程式語言ML,並和他的同事一起完成了LCF的開發。1995年,他回到母校劍橋大學任教,並擔任劍橋大學計算機實驗室主任。(來自維基百科)2005年4月Milner曾經訪問中國。去世前,他的主要研究興趣是模型在普適計算中的系統應用,和偶圖(Bigraphy)模型。
  • 北大30人小班豪配兩位圖靈獎導師!清華有「姚班」,北大看「圖靈」
    昨天,首屆北京大學圖靈班 John Hopcroft 獎學金頒獎儀式在靜園舉行,「天才少年」們獲得了屬於自己的榮譽。這個由圖靈獎獲得者John Hopcroft教授創立的班級,也是北大校園內「神一般」的存在。 昨天,北大靜園,首屆北京大學圖靈班 John Hopcroft 獎學金頒獎儀式在充滿古典氣息的五院「低調」舉行。
  • 圖靈獎頒給《玩具總動員》打造者 憑什麼?
    改變一個產業,引領一個時代,獲很多次奧斯卡獎,加冕計算機最高領域——圖靈獎。這就是剛剛出爐的2019圖靈獎得主:Edwin E. Catmull艾德·卡特姆,以及Patrick M. Hanrahan派屈克· 漢拉汗。
  • 最新圖靈獎頒布!皮克斯創始人獲獎 引領計算機技術和電影「聯姻...
    圖靈獎獲得者,以表彰他們對3D計算機圖形學的貢獻,以及這些技術對電影製作和計算機生成圖像(computer-generated imagery,CGI)等應用的革命性影響。關於圖靈獎圖靈獎由 ACM 於 1966 年設立,全稱 ACM A.M. 圖靈獎(ACM A.M.Turing Award),旨在獎勵對計算機事業作出重要貢獻的個人。
  • 從圖靈獎小插曲看50年來什麼樣的人工智慧最受追捧
    2019年3月27日,ACM(計算機協會)公布了2018年圖靈獎獲得者,他們是深度學習領域三位大神Yoshua Bengio、Geoffrey Hinton和Yann LeCun。三位的獲獎理由是:在概念和工程上的重大突破推動了深度神經網絡成為計算機領域關鍵技術。
  • 你一定不知道的12位圖靈獎得主
    後來我再回答這個問題時尾加一句:C語言之父是圖靈獎得主,Java語言之父目前還沒得到這個獎。我發現學生表情有很大的變化.。圖靈獎(Turing Award)於1966年設立,獎勵在計算機領域作出傑出貢獻的個人(1966年至2019年共73名獲獎者)。
  • 走後門上大學後,人渣開了門,橫掃了圖靈獎、諾貝爾獎、心理學等...
    關鍵詞:赫伯特·亞歷山大·西蒙(Herbert Alexander Simon),赫伯特·西蒙,司馬賀,1916年出生,2001年逝世,圖靈獎獲得者,美國科學家,美國經濟學家,諾貝爾經濟學獎獲得者,猶太諾貝爾獎獲得者,猶太經濟學家,猶太科學家,芝加哥大學校友,德國猶太裔美國人,密爾沃基人,中國科學院外籍院士,美國計算機科學家,計量經濟學家,伊利諾伊理工學院教師,美國國家科學獎獲獎者
  • 2019圖靈獎:兩位科學家,一部3D動畫電影傳奇
    (Ed) Catmull 2019 年圖靈獎,以表彰他們對 3D 計算機圖形學的基本貢獻,以及這些技術對電影製作和計算機生成圖像(CGI)等應用的革命性影響。ACM A.M.圖靈獎,以英國數學家、計算機之父Alan M. Turing命名,有「計算機界的諾貝爾獎」之稱。
  • 國際計算機協會(ACM)宣布兩位皮克斯前員工獲圖靈獎
    首頁 > 快訊 > 關鍵詞 > 皮克斯最新資訊 > 正文 國際計算機協會(ACM)宣布兩位皮克斯前員工獲圖靈獎
  • 2017圖靈獎得主揭曉:體系結構大師獲獎 谷歌成贏家
    Patterson獲得2017 ACM圖靈獎,值得一提的是,他們都是體系結構大師,並且兩位近期都已入職谷歌。資料顯示,圖靈獎是計算機協會(ACM)於1966年設立的獎項,專門獎勵對計算機事業作出重要貢獻的個人,其名稱取自世界計算機科學的先驅、英國科學家、曼徹斯特大學教授艾倫·圖靈(A.M.
  • 窺斑知豹:圖靈獎得主經驗之談與錢學森之問解答的關係
    圖靈獎獲得者談研究經驗: 一、如何單獨做偉大的研究?清華大學雨課堂主講嘉賓:鄒曉輝講授圖靈獎得主漢明碼發明人的經驗之談
  • 圖靈獎「擁抱」深度學習
    ACM(國際計算機協會)在美國當地時間 3 月 27 日公布了 2018 年圖靈獎的授予結果。ACM 將本屆圖靈獎頒給了深度學習領域,並且讚譽三位獲獎人為「深度學習之父」。「只要口袋裡有智慧型手機的人都可以切實體會到自然語言處理和計算機視覺方面的技術進步,這在十年前是無法想像的。除了我們每天使用的產品,深度學習的新進展為科學家們帶來強大的新工具—從醫學、天文學到材料科學。」神經網絡是一種運算模型,由大量簡單的神經元之間相互連接構成。通過改變連接點上的權重(weight),可以改變神經網絡執行的計算。
  • 張亞勤掛帥清華大學智能產業研究院 多名圖靈獎得主任學術顧問
    值得一提的是,AIR學術顧問委員會陣容豪華,包括圖靈獎獲得者、中國科學院院士、美國藝術與科學院院士姚期智教授;圖靈獎獲得者、美國工程院、藝術與科學院院士David Patterson教授,圖靈獎獲得者、美國工程院、藝術與科學院院士John Hopcroft教授等多位世界級學者。
  • 圖靈獎獲得者、中科院院士姚期智教授受聘為同濟大學名譽教授!
    8月11日,圖靈獎獲得者、中科院院士、美國科學院外籍院士、清華大學交叉信息研究院院長姚期智教授受聘為同濟大學名譽教授。受聘儀式在同濟大學四平路校區舉行,校黨委書記方守恩、校長陳杰等校領導出席。2000年榮膺圖靈獎(計算機科學的國際最高獎),是迄今唯一獲此殊榮的華裔科學家。姚期智院士曾於2019年10月率團前來同濟大學訪問,與同濟大學牽頭建設的上海自主智能無人系統科學中心的專家一起,就雙方人工智慧研究內容展開學術互動交流。
  • 圖靈獎推薦信曝光,鄧力:Hinton對深度學習有宗教般信仰
    新智元報導 編輯:金磊【新智元導讀】近日,2018圖靈獎獲得者公布Li Deng)便由合作者的身份高度舉薦Hinton榮獲圖靈獎。新智元得到鄧力先生的授權,公開他寫的圖靈獎推薦信。Geoffrey Hinton,被稱為「神經網絡之父」、「深度學習鼻祖」, 他將神經網絡帶入到研究與應用的熱潮,將「深度學習」從邊緣課題變成了谷歌,臉書,微軟, 亞馬遜, 蘋果等網際網路和IT巨頭仰賴的核心技術.
  • A.M.圖靈獎獲得者、CMU教授Edmund M. Clarke因COVID-19去世
    圖靈獎得主Edmund M. Clarke在長期患病後於當地時間周二死於COVID-19,享年75歲。Clarke來自黎巴嫩山,他最著名的工作成果是模型檢查,這是一種檢測計算機硬體和軟體設計錯誤的自動化方法。CMU校長Farnam Jahanian表示,隨著Clarke先生的去世,世界失去了計算機科學領域的一位巨人。