Ullman shares the prize with long-time collaborator Alfred Aho of Columbia University. They are recognized for their influential work on compilers and algorithms, including their co-authorship of widely popular textbooks on these topics.
By Andrew Myers
The Association of Computer Machinery (ACM) has announced that Jeffrey Ullman, Stanford W. Ascherman Professor of Computer Science, Emeritus, at Stanford University, has been named co-recipient of the 2020 A.M. Turing Award, deemed by many to be the equivalent of the “Nobel Prize” of computing. The Turing Award recognizes profound impact on the field of computer science and includes a $1 million prize, which Ullman will share with his long-time collaborator Alfred Aho of Columbia University.
ACM is recognizing the pair for their seminal work in compilers and algorithms and their lasting influence on the field through the nine textbooks they co-authored together, some dating to the early 1970s. ACM cited two of their textbooks by name – The Design and Analysis of Computer Algorithms from 1974 and Principles of Compiler Design (also known in computer science circles as “the Dragon Book” after its distinct cover illustration of a knight fighting a dragon) published in 1977.
First issued in the formative years of the soon-to-explode computer industry, these books became required reading for millions of future computer scientists. Meanwhile, Ullman and Aho’s collaborations in algorithm design and analysis techniques led to a catalog of standard techniques such as “divide and conquer,” which became the core of computer science theory in subsequent decades, according to the ACM.
Few people outside the field know that once a computer program is written in a language humans understand, such as C++, it must then be translated to a lower-level language that machines understand – this translation process is known as “compiling.” For decades, Ullman and Aho were the acknowledged experts in compiling, but also other fields, as well.
“Aho and Ullman established bedrock ideas about algorithms, formal languages, compilers and databases, which were instrumental in the development of today’s programming and software landscape,” said Jeff Dean, Google senior fellow and SVP, Google AI, in an announcement distributed by the ACM.
“In many ways, those textbooks, particularly the Dragon Book, brought a lot of new people to computer science,” Ullman said, reflecting broader influence on the field. “At some point, kids were proud to be seen walking around campus with that cover under their arm.” According to the ACM, Aho and Ullman “shaped the foundations of programming language theory and implementation, as well as algorithm design and analysis.”
“The two titles mentioned by ACM are only the best known of his books with Aho. Jeff’s influence was that broad,” said John Mitchell, former vice provost at Stanford and current chair of computer science. “On writing, he gave me some great advice: never take more than a year to write a book. If you do, the reason you are writing it will have passed. The department is proud to count Jeff Ullman as a colleague.”
“Jeffrey Ullman, along with his collaborator Alfred Aho, has made pathbreaking contributions to our understanding of fundamental algorithms and programming language design and implementation,” said Marc Tessier-Lavigne, president of Stanford. “Their work has enabled the modern computer software that powers our world, and it has profoundly influenced generations of computer programmers.”
Ullman and Aho each earned doctorates at Princeton University and then joined the storied Bell Labs in 1966. Ullman left Bell for academia in 1969, first at Princeton and, later, at Stanford, where he settled in 1979. Meanwhile, Aho continued in the corporate setting for three decades before joining the faculty at Columbia. Despite widening geographical separation, Ullman and Aho’s close professional collaboration continued throughout. Their work together includes the aforementioned textbooks, but also numerous papers and new programming techniques used in algorithms, programming languages, compilers and software systems.
“Jeff Ullman helped bring me to Stanford, and I worked closely with him from my very first days here,” said Jennifer Widom, dean of the Stanford University School of Engineering. “While ACM is recognizing his foundational work in compilers and algorithms by name, I can assure you his influence extends far beyond those parameters, particularly in databases, my specialization. Jeff is a profoundly influential figure, not only at Stanford but to the field of computer science as a whole – not to mention he’s an all-around unassuming and kind individual. Jeff couldn’t be more deserving of the Turing Award.”
First awarded in 1966, the A.M. Turing Award is named for Alan M. Turing, the British mathematician best known for his history-altering cryptanalysis of Germany’s Enigma code system during World War II. The list of prior winners includes “computer scientists and engineers who created the systems and underlying theoretical foundations that have propelled the information technology industry.”
“What can I say? I can die happy,” Ullman says, with characteristic humor and understatement, of winning the preeminent award in his field. “It’s something I was not expecting. The contributions that Al Aho and I made were not the kind that normally wins the Turing Award, but it is a great honor to be recognized in this way.”