Frances Allen

Frances Allen
Frances Elizabeth Allen (August 4, 1932August 4, 2020) was an American computer scientist and pioneer in the field of optimizing compilers. Allen was the first woman to become an IBM Fellow, and in 2006 became the first woman to win the Turing Award. Her achievements include seminal work in compilers, program optimization, and parallelization. She worked for IBM from 1957 to 2002 and subsequently was a Fellow Emerita.
Early life and education
Allen grew up on a farm in Peru, New York, near Lake Champlain, as the oldest of six children. Her father was a farmer, and her mother an elementary schoolteacher. Her early elementary education took place in a one-room school house a mile away from her home, and she later attended a local high school.
She graduated from The New York State College for Teachers (now part of the University at Albany, SUNY) with a Bachelor of Science degree in mathematics in 1954 and began teaching school in Peru, New York. After two years, she enrolled at the University of Michigan and earned a Master of Science degree in mathematics in 1957.
Career and research
Deeply in debt with student loans, she joined IBM Research in Poughkeepsie, New York, as a programmer in 1957, where she taught incoming employees the basics of Fortran. She planned to return to teaching once her student loans had been paid, but ended up staying with IBM for her entire 45-year career. In 1959, Allen was assigned to the Harvest project for code breaking with the National Security Agency, and worked on a programming language called Alpha. She managed the compiler-optimization team for both Harvest and the Stretch project.
In 1962, she was transferred to Thomas J. Watson Research Center, where she contributed to the ACS-1 project, and later in the 1970s, to PL/I. During these years, she worked with fellow researcher John Cocke to write a series of seminal papers on optimizing compilers, helping to improve the efficiency of machine code translated from high-level languages.
From 1970 to 1971 she spent a sabbatical at New York University and acted as adjunct professor for a few years afterward. Another sabbatical brought her to Stanford University in 1977.
From 1980 to 1995, Allen led IBM's work in the developing parallel computing area, and helped to develop software for the IBM Blue Gene project. Allen became the first female IBM Fellow in 1989. She retired from IBM in 2002, but remained affiliated with the corporation as a Fellow Emerita. In 2007, the IBM Ph.D. Fellowship Award was created in her honor. After retiring, she remained active in programs that encourage women and girls to seek careers in science and computing.
Her A. M. Turing Award citation reads:
Awards and honors
Allen was a Fellow of the Institute of Electrical and Electronics Engineers (IEEE) and the Association for Computing Machinery (ACM). In 2000, she was made a Fellow of the Computer History Museum "for her contributions to program optimization and compiling for parallel computers". She was elected to the National Academy of Engineering in 1987, to the American Philosophical Society in 2001, and to the National Academy of Sciences in 2010. She was nominated a Fellow of the American Academy of Arts and Sciences in 1994.
She received the IEEE Computer Society Charles Babbage Award in 1997 and the Computer Pioneer Award of the IEEE Computer Society in 2004. In 1997, Allen was inducted into the Witi Hall of Fame. She won the 2002 Augusta Ada Lovelace Award from the Association for Women in Computing. In 2004, Allen was the winner of the ABIE Award for Technical Leadership from the Anita Borg Institute.
Allen was recognized for her work in high-performance computing with the 2006 Turing Award. She became the first woman recipient in the forty-year history of the award, which is considered the equivalent of the Nobel Prize for computing and is given by the Association for Computing Machinery. In interviews following the award she hoped it would give more "opportunities for women in science, computing, and engineering".
In 2009 she was awarded an honorary doctor of science degree from McGill University for "pioneering contributions to the theory and practice of optimizing compiler techniques that laid the foundation for modern optimizing compilers and automatic parallel execution".
Publications
A list of her select publications includes:
Allen, Frances E., "Interprocedural data flow analysis", Proceedings of Information Processing 74, IFIP, Elsevier / North-Holland (1974), 398–402.
Allen, Frances E. and J. Cocke, "A program data flow analysis procedure", Communications of the ACM, Vol. 19, No. 3 (March 1976), 137–147.
Allen, Frances E. et al., "The Experimental Compiling System", IBM Journal of Research and Development, Vol. 24, No. 6, (November 1980), 695–715.
Allen, Frances E., "The history of language processor technology at IBM", IBM Journal of Research and Development, Vol. 25, No. 5 (September 1981), 535–548.
Personal life
In 1972, Allen married New York University computer science professor and collaborator Jacob T. Schwartz. They divorced in 1982.
Allen died on August 4, 2020, her 88th birthday, from complications with Alzheimer’s disease.
References
External links
Frances Allen: 2000 Fellow Awards Recipient via Computer History Museum
Fran Allen on Compilers and Parallel Computing Systems Notes from her 2008 Organick Memorial Lecture
1932 births
2020 deaths
American computer scientists
Programming language researchers
American women computer scientists
Turing Award laureates
Fellows of the American Academy of Arts and Sciences
Fellows of the Association for Computing Machinery
Fellow Members of the IEEE
IBM Fellows
Members of the United States National Academy of Engineering
IBM Research computer scientists
New York University faculty
People from Peru, New York
University at Albany, SUNY alumni
University of Michigan College of Literature, Science, and the Arts alumni
20th-century American scientists
21st-century American scientists
20th-century American women scientists
21st-century American women scientists
Scientists from New York (state)