M. Douglas McIlroy douglas.mcilroy@dartmouth.edu http:/www.cs.dartmouth.edu/~doug An adjunct professor of computer science at Dartmouth College, M. Douglas McIlroy retired in 1997 from Bell Laboratories (successively a part of AT&T and its spinoff Lucent Technologies, since acquired by Alcatel then Nokia). At Bell Labs he headed a computer-science research department from 1965 to 1986, and thereafter served as Distinguished Member of Technical Staff. His department did wide-ranging theoretical and applied research in automata theory, programming languages, compilers, design verification, algorithms, computational complexity, text processing, graphics, image processing, and computer security. It is best known, though, as the birthplace of the Unix operating system, a model that has stood the test of time and underlies many modern operating systems, including Android, macOS and Linux. In the area of computer languages, McIlroy participated in the design of PL/I (a general-purpose language of the 1960's), contributed to C++, and wrote unusual compilers for PL/I, Lisp, Altran (an algebraic manipulation system), and TMG (a compiler-writing tool). Long interested in data-stream processing, he conceived "pipes" for combining Unix programs, invented the classic coroutine prime-number sieve, and developed algorithms for processing power series. Other research topics include text and string processing, computer cartography, theorem proving, and dynamic storage allocation. The notion of "language extension" arose from his early work in macroprocessors, and "software components" from a paper he presented at the first conference on software engineering. In a lighter vein, he coauthored Darwin, the first game of survival among self-reproducing programs, and used the computer for word games. In his later years at Bell Labs his research addressed multilevel security for Unix, ultimately accurate bitmap graphics, and full-text indexing. At Dartmouth he used Haskell to obtain strikingly simple stream-based programs for power series and regular languages. McIlroy contributed to the design and construction of the Multics operating system. To Unix he contributed many utilities and subroutines, including "diff" for comparing files, "spell" for checking spelling, "join" for manipulating databases, and "speak", the first real-time text-to-speech program. McIlroy joined Bell Laboratories in 1958 after earning a bachelor's degree in engineering physics from Cornell University and a PhD in applied mathematics from the Massachusetts Institute of Technology. He taught while at MIT, and was a visiting lecturer at Oxford University from 1967 to 1968. He served the Association for Computing Machinery as national lecturer, Turing award chairman, member of the publications planning committee, and associate editor for the Communications of the ACM, the Journal of the ACM, and ACM Transactions on Programming Languages and Systems. He also served on the executive committee of CSNET (an evolutionary stage between the exclusive ARPANET and the public Internet), on various advisory panels to the Department Defense, the New Jersey Board of Higher Education, and the National Science Foundation, and on visiting committees at Argonne National Laboratories, Syracuse University, and the University of Texas at Austin. He coauthored several National Research Council reports, including "Computers at Risk" (computer security, 1990) and "Computing the Future" (directions for academic computer science, 1992). He is a past officer of the New York Map Society, a founding member of the International Federation of Information Processing Societies working group on programming methodology (WG2.3), and a fellow of the American Association for the Advancement of Science. In 2004 the Usenix Association presented McIlroy its lifetime achievement award "for over fifty years of elegant contributions to Unix and programming", and also its Software Tools User Group award. In 2006 he was elected to the National Academy of Engineering. In his previous home town of Bernardsville, New Jersey, McIlroy served as chairman of the shade tree commission, chairman of the environmental commission, alternate member of the planning board, and trustee of the public library. He now lives in Hanover, New Hampshire, where he served on the conservation commission and chaired the trails committee, on which he still serves. His family has a summer camp at Piseco, New York, where he serves on the board of the Irondequoit Conservation Society, a local land trust. Barbara McIlroy, his wife for over 50 years, is also active in various conservation organizations. last modified April 2023