“龍書” 作者斬獲圖靈獎!谷歌 AI 大神、Swift 之父都受它啓蒙
整理 | 鄭麗媛
出品 | CSDN(ID:CSDNnews)
其中,啓蒙了國內外無數程序員的《編譯器設計原理》、也就是人稱 “龍書” 的作者,正是 Aho 和 Ullman!
緣起貝爾實驗室
回顧 Aho 和 Ullman 的合作生涯,發現這二人的緣起始於人才輩出的貝爾實驗室。
進入貝爾實驗室之前,Aho 和 Ullman 均在普林斯頓大學獲得了博士學位,此後二人於 1967 年在貝爾實驗室首次合作,早期工作主要是開發用於分析和翻譯編程語言的高效算法。
不過,這段共事並沒有持續很久。1969 年 Ullman 離開了貝爾實驗室,開始學術界的職業生涯並最終加入斯坦福大學,而 Aho 也在貝爾實驗室工作了 30 多年後的 1995 年後加入了哥倫比亞大學計算機科學系。
儘管二人在不同機構任職,但彼此均獲得了卓越成就:
-
**Alfred Vaino Aho:**曾獲 IEEE 馮諾依曼獎和 NEC C&C 基金會 C&C 獎,是美國科學促進會、ACM、貝爾實驗室和 IEEE 的研究員,也是美國國家工程學院,美國藝術與科學學院和加拿大皇家學會的會員。
-
**Jeffrey David Ullman:**曾獲 IEEE 馮諾依曼獎、NEC C&C 基金會 C&C 獎、Donald E. Knuth 獎和 ACM Karl V. Karlstrom 傑出教育家獎,除了身爲 ACM Fellow,他還是美國國家工程學院、美國國家科學院和美國藝術與科學學院的會員。
此外,這數十年間,Aho 和 Ullman 的合作並未停止,他們將研究成果整理成文,共同撰寫了許多書籍與論文,介紹有關算法、編程語言、編譯器和軟件系統的新興技術。其中,光合作出版的書籍就有 9 本(包括第一版和後續版本):
-
The Theory of Parsing, Translation, and Compiling, Vol. 1, Parsing. (1972)
-
The Theory of Parsing, Translation, and Compiling, Vol. 2, Compiling. (1973)
-
The Design and Analysis of Computer Algorithms. (1974 )
-
Principles of Compiler Design.(1977)
-
Data Structures and Algorithms.(1983)
-
Compilers: Principles, Techniques, and Tools. (1986)
-
Foundations of Computer Science.(1992)
-
Foundations of Computer Science, C Edition. (1995)
-
Compilers: Principles, Techniques, and Tools, Second Edition. (2007)
其中最廣爲流傳,也對計算機領域影響最深的是兩本:《計算機算法設計與分析(The Design and Analysis of Computer Algorithms)》(1974),以及綽號 “龍書” **的《編譯程序設計原理(Principles of Compiler Design)》(1977)**。
(左:計算機算法設計與分析;右:編譯程序設計原理)
由 Aho,Ullman 和 John Hopcroft 合著的《計算機算法設計與分析》,被視爲領域的經典著作,也是這些年來計算機科學研究中被引用最多的書籍之一。
彼時計算機科學尚且還是一個新興領域,《計算機算法設計與分析》這本書就成爲了全世界算法課程的標準教科書。該書還引入了隨機存取機(RAM)作爲使用遞歸關係分析計算機算法的時空複雜度的基本模型,如今已成爲標準計算機科學課程的組成部分。
如果說**《計算機算法設計與分析》爲最初的算法領域引入標準,那麼 “龍書” 就教會了我們如何控制計算機**。
啓蒙數代人的 “龍書”
如今各種高級程序語言的簡潔易懂,取代了最原始的機器語言的晦澀繁瑣,其中編譯器——將這些高級語言指令轉換成處理器真正理解的機器代碼,功不可沒。
而**用於現代編程語言的大部分編譯器技術,都源於 Aho 和 Ullman,“龍書” 也正是二人將對此的研究成果匯成書籍,成爲了編譯領域無可替代的經典著作,啓蒙了國內外數代開發者。**Ullman 自己都說:“從許多方面來說,那些教科書,尤其是龍書,爲計算機科學帶來了很多新人。”
“龍書” 不僅是國外許多著名高等院校和科研機構的標準教材,對中國計算及教育界也有重大影響,是許多大學計算機專業本科生和研究生編譯原理與技術課程的教材,也成爲了諸多計算機技術人員必讀的專業書籍之一。
這其中就包括 Swift 之父——Chris Lattner。身爲編譯器大神的 Chris,在碩博生涯靠着鑽研 “龍書” 逐漸成爲大牛。因此,後來在做 Clang 項目時,Chris 以影響他最大的 “龍書” 爲靈感,爲項目選定了 “龍” 的圖標:
此外,自 1977 年初版 “龍書” 在計算機領域影響頗深後,接下來的幾十年中 “龍書” 也在不斷升級:
-
1977 年,也就是第一版《計算機算法設計與分析》發行,由於封面是騎士與一隻綠色的龍,因此被人稱爲 “龍書” 或“綠龍書”;
-
1986 年,Aho 和 Ullman ,再加上 Ravi Sethi,在原基礎上進行升級,書名改爲《Compilers: Principles, Techniques and Tools》,封面依舊是龍與騎士,但龍的顏色變爲紅色,因此這本書被稱爲 “龍書二” 或 “紅龍書”;
-
2006 年,在原基礎上又增加了一位作者 Monica S. Lam,“龍書” 再次升級,名字沿用《Compilers: Principles, Techniques and Tools》,但封面的龍變爲紫色,這本書便被叫做 “紫龍書”。
“紫龍書” 的新增作者 Monica S. Lam 曾在 2015 年接受過 CSDN 的專訪,或許與 Aho 和 Ullman 願意將研究成果獻給世人的初衷一樣,她表示:“技術可以改變一切,而我所向往的世界就是人人都可以當創造者,生產者。”
**影響深遠,實至名歸
**
在公佈 Aho 和 Ullman 榮獲 2020 圖靈獎之後,許多業界知名人士予以慶賀與肯定。
谷歌 AI 大神 Jeff Dean 發推特祝賀:“我在研究生院上編譯課的時候,用了'龍書'作爲教材,這給成千上萬的計算機科學家帶來了美好的回憶。”
Jeff Dean 還表示:“Aho 和 Ullman 建立了關於算法、編譯器和數據庫的基本思想,這些思想對當今編程和軟件領域的發展至關重要。”
哥倫比亞工程學院院長 Mary C. Boyce 說:“我代表哥倫比亞工程學院向 Aho 教授表示祝賀。圖靈獎是計算機科學領域中最負盛名的獎項,Aho 在工業和學術界都有傑出的職業生涯,而圖靈獎正確地表彰了 Aho 在編程語言方面的開創性貢獻。”
斯坦福大學校長 Marc Tessier-Lavigne 也肯定道:“Aho 和 Ullman 爲我們對基本算法以及編程語言設計和實現的理解做出了突破性貢獻。他們的工作使現代計算機軟件爲我們的世界提供了動力,並且深刻影響了數代計算機程序員。”
Aho 和 Ullman 本人也對這次的獲獎感到榮幸與開心。
“獲得這一享有盛譽的獎項令我感到榮幸和謙卑。我很高興 ACM 通過這個獎項肯定了在編程語言的設計和實現中抽象和算法的根本性和重要性。”Aho 說。
Ullman 則幽默迴應:“我能說什麼?我可以快樂地死去了。獲得圖靈獎是我沒想到的。我和 Aho 所做的貢獻通常不會獲得圖靈獎,但能以這樣的方式得到認可是一種莫大的榮譽。”
最後,再次祝賀 Alfred Vaino Aho 和 Jeffrey David Ullman 獲得 2020 年圖靈獎!
參考鏈接:
https://awards.acm.org/about/2020-turing
https://www.eurekalert.org/pub_releases/2021-03/cuso-aaw033121.php
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/dR74KQvTWxkaAbeQq5d-6w