彼得·諾爾

彼得·諾爾

彼得·諾爾(英語:Peter Naur,1928年10月25日-),生於丹麥腓特烈斯貝,計算機科學家。他開發了BNF範式,改進了程式語言。他也投入了ALGOL 60的開發工作。曾任哥本哈根大學教授,為2005年圖靈獎得主,也是目前唯一一位丹麥籍的得主。

基本介紹

  • 中文名:彼得·諾爾
  • 外文名:Peter Naur
  • 國籍:丹麥
  • 出生地:丹麥腓特烈斯貝
  • 出生日期:1928年10月25日
  • 職業:教授
  • 主要成就:開發了BNF範式,改進了程式語言
    2005年圖靈獎得主
個人經歷,傳奇生涯,個人著作,

個人經歷

1957年取得天文學博士學位。
他將巴科斯範式導入ALGOL 60中,並進一步發展它。
諾爾1928年生於丹麥首都哥本哈根近郊的弗雷德里克斯伯格(Frederiksberg),1949年在哥本哈根大學取得天文學碩士學位。1950~1951年,他在英國劍橋大學進修期間,用過由威爾克斯主持研製的世界上第一台存儲程式式數字計算機EDSAC,學到了不少有關計算機和在計算機上編程的知識。但他的主要興趣仍在天文學方面。1952—1953年他在芝加哥大學的Yerkes天文台和McDonald天文台當助理研究員期間,由於天文學研究中有大量計算,曾到IBM公司的沃森研究中心進修,這使他獲得了更多的計算機知識。1953年回到丹麥以後,他到哥本哈根天文台工作。由於開展天文研究的需要,他受命設計了丹麥的第一台計算機DASK,同時也完成了他天文學研究的博士論文,1957年取得哥本哈根大學天文學博士學位。
ALGOL 58報告公布以後,受到廣泛關注,但它的不足和缺點也受到批評。1960年1月11日,在IBM(歐洲)的財政支持下,舉行了一次重要的會議,對ALGOL 58進行修改。諾爾不但參加了這個會議,成為新的ALGOL(即ALGOL 60)文本的執筆人,而且對巴克斯提出的描述語言語法的方案進行了仔細審閱和修改,使之完善,從而誕生了BNF。
彼得·諾爾
1961年,諾爾在由他設計的DASK上實現了ALGOL。這是世界上首批ALGOL實現中的一個。
雖然參與了這么多活動,做了這么多工作,也做出了這么大貢獻,但諾爾在這段時間裡仍主要關心天文學,計算機只是由於研究天文學的需要而介入的,直到約1964年左右,諾爾對計算與數據處理的興趣才超出對天文學的興趣而占了上風。1966年,他發明了一個新的單詞——datalogy。丹麥的計算機學會的正式名稱就叫Danish Society of Datalogy,他是這個學會的第一任主席。1969年,他說服哥本哈根大學建立起了計算機專業,他又是該校的第一位計算機教授。
鑒於諾爾在數據處理技術方面為國家所作出的貢獻,丹麥政府在1963年授予他C.A.Hagemanns金質獎章,1966年又授予他Rosenhjaer獎。IEEE則因他“對計算機語言開發”(For computer language development)所作出的貢獻授予他計算機先驅獎。
1986年計算機先驅獎獲得者彼得·諾爾(Peter Naur)這個名字對於從事計算機科學技術的人來說是不陌生的,因為大家常用的描寫高級語言語法的元語言BNF的全稱是“巴克斯—諾爾範式”,這個範式是由巴克斯首創,但經諾爾改進而成的。但大家未見得知道,諾爾原本是天文學家,“陰差陽錯”地走進了計算機領域並成為對計算機技術的發展起了重大作用的科學家。

傳奇生涯

《紐約時報》報導,2006年3月1日,國際計算機協會(ACM)宣布彼得.諾爾為2005年A.M.圖靈獎的獲得者。這個獎項是由於諾爾在定義Algol 60這種程式設計語言方面的先驅性工作而頒發給他的。Algol 60是許多後來的程式設計語言,包括今天那些必不可少的軟體工程工具的原型。圖靈獎,被認為是“計算科學界的諾貝爾獎”,於 1966年首次頒發,是以英國數學家圖靈(Alan M.Turing)命名的。獎金額度為100,000美元,由英特爾公司提供贊助。
諾爾博士在1960年是具有極高影響的《算法語言Algol 60報告》的主編。這份報告的優雅、一致和連貫使他聲名鵲起,並被認為是創造了這種算法語言的強大功能和簡易性的重要貢獻者。這份報告先驅性地使用了BNF範式(Bcakus-Naur-Form)用以定義程式設計語言的語法。BNF現在是定義一種計算機語言的標準方式。諾爾還因為他對於編譯設計的貢獻、以及在電腦程式設計方面的技巧與實踐而受到表彰。
“諾爾博士的Algol 60體現了算法表達中的優雅和簡明的概念,”英特爾高級研究員和首席技術主管查斯廷.拉納(Justin Rattner)說,“多年以來,計算機語言已經被各種特性和功能所充斥,這使得計算機越來越難學習,效力越來越低。未來的語言設計者正面臨著今天在程式設計方面的最大挑戰,如通用目的、多執行緒計算等。這個獎項應該鼓勵他們達到與Algol 60同樣優雅和簡明的水平,而這正是Algol 60的特點。”
計算科學誕生的標誌
2002年,前圖靈獎得主Edsger Dijbstra把Algol 60的發展描述為“一個絕對的奇蹟”,標誌著他所說的“計算科學”的誕生,因為Algol 60首次顯示了自動計算能夠並且應當成為學術關注的主題。 Algol 60的發展是一群極具天賦的人才的工作成果,其中包括幾位以後的圖靈獎獲得者。
諾爾博士對於Algol 60的貢獻是創新性的。另一位前圖靈獎得主約翰.班卡斯(John Backus)認為諾爾是推動定義Algol 60的“強勁的智力力量”。他評論說,諾爾的Algol 報告編輯工作和他對於正式提出Algol 60的1960年1月的會議的充分準備,“真正使得Algol 60成為現在這種語言。如果他沒有做這些工作,Algol 60就不會產生。”
在Algol 60報告出版之前,計算機語言是通過說明性的使用手冊和編譯代碼本身而非正式地定義。這個報告通過使用BNF來定義語法,並用精心選擇的說明文字定義語義,從而簡潔、有力而又清晰。17頁長的Algol 60報告展示了對優雅清晰的語言的完美定義,這種語言可用於計算機之間交流,也可用於人類之間交流。這種語言精心地做到不依賴於任何特定的計算機的屬性。這種新的語言對於編譯程式作者是一個很大的挑戰。諾爾博士繼續和他人合著了《GIER Algol 編譯程式》(丹麥開發的電晶體電子計算機被稱為GIER),這是第一批能夠完全準確地處理語言的強大過程機理的編譯程式之一。
“諾爾博士的貢獻是計算領域的一個分水嶺,改變了我們定義程式設計語言的方式,”2005年圖靈委員會的主席,微軟研究院的詹姆斯.格瑞(James Gray)說,“許多我們現在認為是理所當然的程式設計是在Algol 報告中提出的,它提出了一種簡明的塊結構語言,改善了我們的算法表達方式。”
諾爾博士在將軟體工程建立為一種學科方面起了很大作用。他通過他的主張和結構化編程方面的工作,在編寫準確程式的方法學上作出了先驅性的貢獻,而他的主張使程式設計師表達他們的假設成為可能。格瑞說:“他的工作,儘管是正式的和精確的,但表現出了非同尋常的對於限制的理解和對形式以及精確度的運用。”通過這些活動以及開設了一門有影響力的計算機科學課程,諾爾博士為構建當今計算知識和技巧的基本構成部分作出了貢獻。
實際運算和套用方面的早期經驗
諾爾博士在1949年獲得了哥本哈根大學的magister學位(相當於碩士學位),後來又回校於1957年獲得天文學博士學位。在1950~1951學年,諾爾博士在英國劍橋國王學院學習天文學,然後來到美國進一步開展研究工作。這個工作涉及到使用早期的計算機(以EDSAC開始,這是世界上第一台實用的存儲程式的電子計算機)用於天文學計算。1953年,他回到丹麥在哥本哈根天文台做科研助理。
1959年他加入了丹麥的第一家計算機公司Regnecentralen的編譯程式設計小組。在那裡他是13人的國際Algol 60小組報告的主編,正是這個報告定義了Algol 60。他在1969年成為了哥本哈根大學計算學院的教授,並於1998年退休。
諾爾博士1963年獲得了丹麥技術大學頒發的G.A.Hagemann金獎,1966年丹麥電台的Jens Rosejaer獎,以及1986年的電學和電子工程師學會頒發的計算機先驅獎。
ACM將於2006年5月20日在加州的舊金山Westin街Francis飯店舉行的每年一度的ACM頒獎宴會上頒發圖靈獎。

個人著作

《計算——人類的重要活動》(Computing:a Human Activity,Addi.son·Wesley,1992)
《邏輯和規則的奧妙》(Knowing and Mystique of Logic and Rules,Kluwer Academic Pr.,1995)

相關詞條

熱門詞條

聯絡我們