丹尼(ni)斯·里(li)奇,C語(yu)言(yan)之父,UNIX之父。曾擔(dan)任(ren)朗訊科(ke)技公司貝爾實驗室(shi)下(xia)屬的(de)計(ji)算機科(ke)學研(yan)究中心(xin)系統軟件(jian)研(yan)究部的(de)主(zhu)任(ren)一職。1978年與(yu)布萊恩·科(ke)爾尼(ni)干(gan)(Brian W. Kernighan)一起出版了名著《C程序設計(ji)語(yu)言(yan)(The C Programming Language)》。此書已翻譯(yi)成多種語(yu)言(yan),被譽為c語(yu)言(yan)的(de)圣經。2011年10月12日(ri)(北京時間為10月13日(ri)),丹尼(ni)斯·里(li)奇去世(shi),享年70歲。
丹尼(ni)斯(si)·里(li)奇獲(huo)得學(xue)(xue)士學(xue)(xue)位(wei)并且(qie)獲(huo)得哈佛大學(xue)(xue)更高(gao)的(de)(de)(de)學(xue)(xue)位(wei),在那里(li)以肄業(ye)生(sheng)(sheng)資格學(xue)(xue)習(xi)物理(li)(li)(li),以研究生(sheng)(sheng)資格學(xue)(xue)習(xi)應(ying)用數(shu)學(xue)(xue)。這時(shi)(shi)候,一(yi)(yi)(yi)個偶然的(de)(de)(de)機會改(gai)變了(le)(le)他(ta)(ta)(ta)一(yi)(yi)(yi)生(sheng)(sheng)的(de)(de)(de)選擇。里(li)奇這樣描述他(ta)(ta)(ta)的(de)(de)(de)轉變,當(dang)他(ta)(ta)(ta)聽取一(yi)(yi)(yi)些非(fei)課(ke)程類(lei)的(de)(de)(de)計(ji)(ji)算機講座后(大約1960年(nian)),開始(shi)對(dui)計(ji)(ji)算機著迷,并選擇了(le)(le)一(yi)(yi)(yi)學(xue)(xue)期正(zheng)規(gui)(介紹(shao)性的(de)(de)(de))課(ke)程。第一(yi)(yi)(yi)部分是(shi)(shi)模擬計(ji)(ji)算機,后面(mian)是(shi)(shi)關于打孔(kong)卡片設(she)備的(de)(de)(de),然后是(shi)(shi)關于真(zhen)正(zheng)的(de)(de)(de)數(shu)字(zi)式計(ji)(ji)算機的(de)(de)(de),并為Univac I號(hao)機準備了(le)(le)一(yi)(yi)(yi)個程序(xu)。當(dang)時(shi)(shi)他(ta)(ta)(ta)是(shi)(shi)一(yi)(yi)(yi)個主修物理(li)(li)(li)學(xue)(xue)的(de)(de)(de)學(xue)(xue)生(sheng)(sheng),但(dan)是(shi)(shi)更加(jia)著迷于計(ji)(ji)算機處理(li)(li)(li)的(de)(de)(de)理(li)(li)(li)論(lun)(lun)和(he)(he)實際問(wen)題。因此,他(ta)(ta)(ta)的(de)(de)(de)畢(bi)業(ye)論(lun)(lun)文大部分是(shi)(shi)理(li)(li)(li)論(lun)(lun)方(fang)面(mian)的(de)(de)(de)(遞歸函數(shu)的(de)(de)(de)層(ceng)次),但(dan)是(shi)(shi)也開始(shi)投入更大精(jing)力到實踐方(fang)面(mian)。作(zuo)(zuo)為助教為同一(yi)(yi)(yi)個介紹(shao)性課(ke)程的(de)(de)(de)后續版本工作(zuo)(zuo)了(le)(le)三年(nian)——不過那時(shi)(shi)計(ji)(ji)算機已經成了(le)(le)IBM7049。 1968年(nian)獲(huo)得數(shu)學(xue)(xue)博士,而論(lun)(lun)文正(zheng)是(shi)(shi)上面(mian)的(de)(de)(de)《遞歸函數(shu)的(de)(de)(de)的(de)(de)(de)層(ceng)次》。1967年(nian)加(jia)入貝爾(er)實驗室,他(ta)(ta)(ta)的(de)(de)(de)父親阿利斯(si)泰爾(er)·里(li)奇(Alistair E. Ritchie)在那里(li)有(you)長時(shi)(shi)間的(de)(de)(de)工作(zuo)(zuo)經歷,他(ta)(ta)(ta)的(de)(de)(de)父親對(dui)晶體管(guan)電(dian)路(lu)類(lei)的(de)(de)(de)東西很有(you)研究,正(zheng)是(shi)(shi)由(you)于父親的(de)(de)(de)影響,也使(shi)得他(ta)(ta)(ta)走上了(le)(le)科學(xue)(xue)研究之路(lu)。不久后,加(jia)入了(le)(le)Multics項(xiang)(xiang)目(mu),那時(shi)(shi)由(you)貝爾(er)實驗室、麻省理(li)(li)(li)工學(xue)(xue)院和(he)(he)通用電(dian)器(qi)三家的(de)(de)(de)合作(zuo)(zuo)項(xiang)(xiang)目(mu)。里(li)奇負責多道處理(li)(li)(li)機的(de)(de)(de)BCPL語言和(he)(he)GE650的(de)(de)(de)編譯(yi)器(qi),它們(men)都是(shi)(shi)屬于GECOS系統(tong)的(de)(de)(de)。同樣的(de)(de)(de),他(ta)(ta)(ta)也寫(xie)了(le)(le)ALTRAN語言的(de)(de)(de)代數(shu)編譯(yi)器(qi),那是(shi)(shi)用于符號(hao)計(ji)(ji)算機的(de)(de)(de)一(yi)(yi)(yi)種語言和(he)(he)系統(tong)。
《The C Programming Language》(《C程(cheng)序設計(ji)語言》)
《Unix Programmer's Manual》
C語(yu)(yu)言(yan)是使用(yong)廣泛的(de)語(yu)(yu)言(yan)之(zhi)一,可(ke)以(yi)說,C語(yu)(yu)言(yan)的(de)誕生是現(xian)代程序語(yu)(yu)言(yan)革(ge)命(ming)的(de)起(qi)點(dian),是程序設計語(yu)(yu)言(yan)發(fa)展史中的(de)一個里(li)程碑。自C語(yu)(yu)言(yan)出現(xian)后,以(yi)C語(yu)(yu)言(yan)為根(gen)基的(de)C++、Java和(he)C#等面(mian)向對象語(yu)(yu)言(yan)相繼誕生,并在各自領域(yu)大獲成功。但C語(yu)(yu)言(yan)依舊在系統編(bian)程、嵌(qian)入式(shi)編(bian)程等領域(yu)占據(ju)著統治(zhi)地位(wei)。C語(yu)(yu)言(yan),這種有效、通用(yong)的(de)編(bian)程語(yu)(yu)言(yan),就是他(ta)開(kai)發(fa)的(de),而這還是他(ta)在做另(ling)一個項目時(shi)的(de)副產(chan)品。丹尼斯·里(li)奇還和(he)肯·湯(tang)普遜一起(qi)開(kai)發(fa)了Unix操作系統,因此,他(ta)還是名(ming)副其實(shi)的(de)Unix之(zhi)父。
從二十世紀(ji)七十年代(dai)起,他的(de)工(gong)作得到了很(hen)多計(ji)算(suan)(suan)機(ji)組(zu)織的(de)公認和(he)表彰,如:美國計(ji)算(suan)(suan)機(ji)協會(hui)(ACM)授(shou)予的(de)系統(tong)及語言(yan)杰出(chu)論文(wen)獎(jiang)(jiang)(1974);電(dian)氣和(he)電(dian)子工(gong)程(cheng)師協會(hui)(IEEE)的(de) Emmanuel Piore 獎(jiang)(jiang)(1982);貝爾實驗(yan)室特別人員獎(jiang)(jiang)(1983);美國計(ji)算(suan)(suan)機(ji)協會(hui)(ACM)的(de)圖靈獎(jiang)(jiang)(1983); NEC公司的(de)基金獎(jiang)(jiang)(1989);電(dian)氣和(he)電(dian)子工(gong)程(cheng)師協會(hui)(IEEE)的(de)優(you)秀獎(jiang)(jiang)章(zhang);漢明勛章(zhang)(1990);計(ji)算(suan)(suan)機(ji)先驅獎(jiang)(jiang) (1994);計(ji)算(suan)(suan)機(ji)歷史博物館(guan)研(yan)究員 (1997) ;哈羅德·潘德獎(jiang)(jiang)(2003);日本獎(jiang)(jiang) (2011)
在(zai)里奇去世后,計算機歷史學(xue)家Paul E. Ceruzzi說:
里奇不(bu)被(bei)人們知道。他的(de)名字一點也不(bu)家喻戶曉,但(dan)是……如果你(ni)有(you)一臺顯微鏡,能在(zai)電(dian)腦里看到(dao)他的(de)作品,你(ni)會發現里面到(dao)處都是他的(de)作品。
著名的(de)(de)(de)(de)計算機科學家 N.Wirth評價他(ta)(ta)說(shuo), 丹(dan)尼斯里奇先生的(de)(de)(de)(de)專業精神令人感動,近40年如一(yi)日,在(zai)他(ta)(ta)所(suo)從事的(de)(de)(de)(de)領域辛勤耕耘,他(ta)(ta)的(de)(de)(de)(de)多項(xiang)發明,包(bao)括C語(yu)(yu)言(yan),Unix,也包(bao)括Plan9,無論哪(na)一(yi)項(xiang),在(zai)軟件發展史上都(dou)有(you)著舉足輕重的(de)(de)(de)(de)地(di)(di)位(wei),和他(ta)(ta)的(de)(de)(de)(de)偉(wei)大成就形成對照的(de)(de)(de)(de)是他(ta)(ta)的(de)(de)(de)(de)行事,態度(du)低(di)調(diao),他(ta)(ta)的(de)(de)(de)(de)表達,象他(ta)(ta)的(de)(de)(de)(de)軟件一(yi)樣,簡潔生動而(er)準(zhun)確。 C++的(de)(de)(de)(de)成功(gong),很大一(yi)部(bu)分(fen)也來(lai)自(zi)于C,是C語(yu)(yu)言(yan)的(de)(de)(de)(de)普及(ji)和深入,才有(you)了后(hou)面(mian)的(de)(de)(de)(de)鳳凰涅槃(pan),從另(ling)一(yi)個角度(du),在(zai)同另(ling)一(yi)語(yu)(yu)言(yan)大師Pascal之父Niklaus Wirth交流時,C++的(de)(de)(de)(de)名字也是源自(zi)C語(yu)(yu)言(yan)的(de)(de)(de)(de)利器(qi),Wirth先生不(bu)無惋(wan)惜地(di)(di)表示,后(hou)來(lai)他(ta)(ta)開發的(de)(de)(de)(de)語(yu)(yu)言(yan)可惜沒叫Pascal2。
“他(ta)(ta)是(shi)虔誠而純粹的計算機天才,侵犯他(ta)(ta)人電腦是(shi)絕不干的。”潘(pan)嘉杰說。
麻省理工(gong)大學計算(suan)機系(xi)的(de)馬丁教授評(ping)價說(shuo)(shuo):如果說(shuo)(shuo),喬布(bu)斯是(shi)(shi)可視化產品中的(de)國(guo)王,那么里奇就是(shi)(shi)不可見王國(guo)中的(de)君主。喬布(bu)斯的(de)貢獻在(zai)于,他如此了(le)解(jie)用戶(hu)的(de)需求(qiu)和渴求(qiu),以至(zhi)于創造出了(le)讓(rang)當代人樂不思蜀的(de)科技產品。然而,卻是(shi)(shi)里奇先生為這些(xie)產品提供(gong)了(le)核心的(de)部件,人們看(kan)不到這些(xie)部件,卻每天都(dou)在(zai)使用著。
克尼漢評(ping)價道:牛頓說他是站(zhan)在(zai)巨人的肩膀上,如今(jin),我們(men)都站(zhan)在(zai)里(li)奇的肩膀上。