2021 年 3 月 31 日,ACM 宣布了2020年图灵奖获得者,美国哥伦比亚大学教授Alfred Aho和斯坦福大学教授Jeffrey Ullman,以表彰他们在编程语言实现的基本算法和理论方面做出的巨大贡献,以及其所编撰的书籍对于几代计算机科学家所带来的积极影响。
我们目前生活在智能化的时代中,这都是人类用高级编程语言编写,再编译成计算机看得懂的低级语言并运行的。而Alfred Aho和Jeffrey Ullman的工作在让电脑认识低级语言方面起到了巨大的作用。他们连接了高级语言和低级语言的桥梁,奠定了编程语言理论,实现和算法设计的基础。
让我们来看看两位大佬的研究历程:
阿尔弗雷德·艾侯(Alfred Aho)
1941年生于加拿大安大略省提明斯,是一位计算机科学家,毕业于多伦多大学,并在普林斯顿大学获得电子工程硕士学位和计算机科学博士学位。毕业后在贝尔实验室担任计算科学研究副总裁,并在此工作了三十多年。1995年加入哥伦比亚大学计算机科学系,并成为其名誉教授。
杰弗里·乌尔曼(Jeffrey Ullman)
生于1942年,也是一位计算机科学家,1963年获得哥伦比亚大学数学工程学士学位,1966年获得普林斯顿大学计算机科学博士学位。1966年至1969年在贝尔实验室担任技术人员,正是这段时间认识了Alfred Aho,并持续了几十年的合作。1969年至1979年在普林斯顿大学任教,在1979年后加入斯坦福大学,并称为其名誉教授。
今年获奖的两位教授在计算机科学教育方面影响力全世界的计算机系学生,科学家和相关从业者。其中最著名的是他们合著的编译原理,因为封面设计是一条龙,因此也被称为”龙书”。在书中整理了高级语言到机器码的各个阶段,并深入讨论了编译器设计的重要概念和实例,可以称为计算机从业人员必读书籍之一,在全球大量高等院校均作为教材进行讲解。毫不夸张的说,Alfred Aho 和 Jeffrey Ullman 能称得上是全球程序员的启蒙老师。
1977年,Alfred Aho和Jeffrey Ullman出版的《Principles of Compiler Design》,因为其封面是一只绿色的龙,因此被人称为绿龙书。
9年后,1986年对该书进行升级,增加了一位合著者Ravi Sethi,并将书名改为《Compilers: Principles, Techniques and Tools》,而封面仍然使用一条龙,龙的颜色改为红色,因此被人称为红龙书。
2006年,作者又增加了Monica Lam,书名沿用《Principles of Compiler Design》,而封面仍然使用一条龙,龙的颜色改为紫色,因此被人称为紫龙书。