High Integrity Language Technology
ACM SIGAda’s Annual International Conference
Guy L. Steele Jr. is a Software Architect at Oracle. He received his A.B. in applied mathematics from Harvard College (1975), and his S.M. and Ph.D. in computer science and artificial intelligence from M.I.T. (1977 and 1980). He has also been an assistant professor of computer science at Carnegie-Mellon University; a member of technical staff at Tartan Laboratories in Pittsburgh, Pennsylvania; and a senior scientist at Thinking Machines Corporation in Cambridge, Massachusetts. He joined Sun Microsystems in 1994 as a Distinguished Engineer and was named a Sun Fellow in 2003. Sun Microsystems was acquired by Oracle in 2010, and he is now a member of Oracle Labs.
He is author or co-author of five books: Common Lisp: The Language (Digital Press, first ed. 1984, second ed. 1990); C: A Reference Manual (Prentice-Hall, first ed. 1984, fourth ed. 1995); The Hacker’s Dictionary (Harper&Row, 1983), which has been revised as The New Hacker’s Dictionary, edited by Eric Raymond with introduction and illustrations by Guy Steele (MIT Press, first ed. 1992, third ed. 1996); The High Performance Fortran Handbook (MIT Press, 1994); and The Java Language Specification (Addison-Wesley, first ed. 1996, second ed. 2000, third ed. 2005). All are still in print. He has been praised for an especially clear and thorough writing style in explaining the details of programming languages.
He has published more than two dozen papers on the subject of the Lisp language and Lisp implementation, including a series with Gerald Jay Sussman that defined the Scheme dialect of Lisp. One of these, “Multiprocessing Compactifying Garbage Collection,” won first place in the ACM 1975 George E. Forsythe Student Paper Competition. Other papers published in CACM are “Design of a LISP-Based Microprocessor” with Gerald Jay Sussman (November 1980) and “Data Parallel Algorithms” with W. Daniel Hillis (December 1986). He has also published papers on other subjects, including compilers, parallel processing, and constraint languages. One song he composed has been published in CACM (“The Telnet Song”, April 1984).
The Association for Computing Machinery awarded him the 1988 Grace Murray Hopper Award and named him an ACM Fellow in 1994. He was elected a Fellow of the American Association for Artificial Intelligence in 1990. He led the team that received a 1990 Gordon Bell Prize honorable mention for achieving the fastest speed to that date for a production application: 14.182 Gigaflops. He was also awarded the 1996 ACM SIGPLAN Programming Languages Achievement Award. In 2001 he was elected to the National Academy of Engineering of the United States of America. In 2002 he was elected to the American Academy of Arts and Sciences. In 2011 he was named an IEEE Fellow.
He has served on accredited standards committees X3J11 (C language) and X3J3 (Fortran), and served as chairman of X3J13 (Common Lisp). He was also a member of the IEEE committee that produced the IEEE Standard for the Scheme Programming Language, IEEE Std 1178-1990. He was a representative to the High Performance Fortran Forum, which produced the High Performance Fortran specification in May, 1993.
He has had chess problems published in Chess Life and Review and is a Life Member of the United States Chess Federation. He has sung in the bass section of the MIT Choral Society (John Oliver, conductor) and the Masterworks Chorale (Allen Lannom, conductor) as well as in choruses with the Pittsburgh Symphony Orchestra at Great Woods (Michael Tilson Thomas, conductor) and with the Boston Concert Opera (David Stockton, conductor). He has played the role of Lun Tha in The King and I and the title role in Li’l Abner. He is a member of Tech Squares, the Plus-level Modern Western Square Dance club at MIT. He designed the original EMACS command set and was the first person to port TeX.
At Oracle labs, he is responsible for research in language design and implementation strategies, and architectural and software support for programming languages. His recent work at Sun has included network design for processor clusters, circuit designs for floating-point arithmetic and interval arithmetic, and proposals for improvements to the Java Programming Language such as generic types, operator overloading, and constant classes. Currently he is Principal Investigator of the Oracle Labs Programming Languages Research Group, which is working on Fortress, a next-generation programming language for scientific and multicore computing (see http://projectfortress.java.net/).