丹尼斯·里奇Dennis Ritchie是一位傳奇程序員。在1960年代后期,他終止了哈佛大學應用數(shù)學的研究生課程,前往貝爾電話實驗室工作,并在那里度過了整個職業(yè)生涯。
現(xiàn)擁有哈佛大學的學士和碩士學位,我曾攻讀物理專業(yè)的博士,同時念了應用數(shù)學專業(yè)的研究生……我1968年撰寫的博士論文課題是函數(shù)的亞遞歸層次結構。我的本科經歷使我確信,自己不夠聰明,無法成為物理學家,同時計算機科學非常的精巧簡潔。我在研究生院的經歷使我確信,我還是不夠聰明,無法成為算法理論方面的專家,同時我發(fā)現(xiàn),比起函數(shù)式的語言,自己更喜歡程序性的語言。
加入貝爾實驗室后不久,里奇與肯·湯普森Ken Thompson(他們倆是1983年圖靈獎的獲得者)聯(lián)手,為后來的信息時代打下了一層地基(地基有好多層~):創(chuàng)造了操作系統(tǒng)Unix和C語言。
時光荏苒,Unix已成為構建數(shù)字世界的大多數(shù)操作系統(tǒng)的基礎,而C曾經是、并且仍然是最重要、最受歡迎的編程語言之一。
里奇于2011年去世后,他的妹妹琳(Lynn)想要整理他生前著作。結果,她找不到哥哥當年在哈佛的博士論文。同時意外發(fā)現(xiàn),C語言之父竟然沒有拿到博士學位。
經過一番努力,琳最終得到了那份博士論文的副本,同時弄清了當年里奇是如何錯失博士學位的。
幸好時間還不算久遠,很多見證者還在。
麻省理工學院的艾伯特·邁耶(Albert Meyer)教授最近向計算機歷史博物館的口述了這段軼事。
里奇完成了博士論文,卻未能拿到學位。WHY?難道是因為論文質量太次,未被論文委員會接受?
好吧,他當然通過了博士論文的答辯。實際上,他離博士學位只有一步之遙:只要向哈佛的圖書館提交一份論文副本作為備案便可——經由圖書館提供的收錄單據才能拿到博士學位。
問題是,博士論文的裝訂費用不菲,而里奇不想出這一筆錢……他認為,既然是哈佛想要把我的論文歸檔,那就應該由校方出裝訂費用。
結果一拖再拖,最后論文原件遺失,博士學位不了了之。
哥德爾為了揭示數(shù)理邏輯的極限,提出了原始遞歸函數(shù)的概念;圖靈想要弄清“計算機的本質”,發(fā)展出了可計算數(shù)的思想。里奇試圖延續(xù)他們的思想,分析嵌套函數(shù)的層次與計算復雜性的問題。他論文里展示的思想幾乎從未被世人所知。
艾伯特·邁耶在讀研究生時,產生了類似的想法,當他與里奇交流的時候,里奇向他介紹了自己利用循環(huán)程序表示邏輯結構的技術。后來邁耶把它們寫進了論文,并因此在學術生涯早期就邁出了受人矚目的第一步。
里奇博士論文的副本——之前遺失了半個世紀——被琳捐贈給計算機歷史博物館。