John Backus
Encyclopedia
John Warner Backus was an American computer scientist. He directed the team that invented the first widely used high-level programming language
(FORTRAN
) and was the inventor of the Backus-Naur form (BNF), the almost universally used notation to define formal language
syntax
.
He also did research in function-level programming
and helped to popularize it.
The IEEE
awarded Backus the W.W. McDowell Award
in 1967 for the development of FORTRAN. He received the National Medal of Science
in 1975, and the 1977 ACM Turing Award “for profound, influential, and lasting contributions to the design of practical high-level programming systems, notably through his work on FORTRAN, and for publication of formal procedures for the specification of programming languages.”
and grew up in nearby Wilmington, Delaware
. He studied at the The Hill School
in Pottstown, Pennsylvania
, and was apparently not a diligent student. After entering the University of Virginia
to study chemistry
, he quit and was conscripted into the U.S. Army. He began medical training at Haverford College
and, during an internship at a hospital, he was diagnosed with a cranial bone tumor
, which was successfully removed; a plate was installed in his head, and he ended medical training after nine months and a subsequent operation to replace the plate with one of his own design.
After moving to New York City
he trained initially as a radio technician and became interested in mathematics. He graduated from Columbia University
with a Master's degree in mathematics in 1949, and joined IBM
in 1950. During his first three years, he worked on the Selective Sequence Electronic Calculator (SSEC); his first major project was to write a program to calculate positions of the Moon
. In 1953 Backus developed the language Speedcoding
, the first high-level language created for an IBM computer.
Programming was very difficult, and in 1954 Backus assembled a team to define and develop Fortran for the IBM 704
computer. Fortran was the first high-level programming language to be put to broad use.
Backus made another, critical contribution to early computer science: during the latter part of the 1950s Backus served on the international committees which developed ALGOL 58
and the very influential ALGOL 60
, which quickly became the de facto worldwide standard for publishing algorithms. Backus developed the Backus-Naur Form (BNF
), in the UNESCO
report on ALGOL 58. It was a formal notation able to describe any context-free programming language, and was important in the development of compilers
. This contribution helped Backus win the Turing Award
.
He later worked on a "function-level" programming language
known as FP
which was described in his Turing Award lecture "Can Programming be Liberated from the von Neumann Style
?". Sometimes viewed as Backus's apology for creating FORTRAN, this paper did less to garner interest in the FP language than to spark research into functional programming
in general. An FP interpreter
was distributed with the 4.2BSD
Unix
operating system. FP was strongly inspired by Kenneth E. Iverson
’s APL
, even using a non-standard character set. Backus spent the latter part of his career developing FL
(from "Function Level"), a successor to FP. FL was an internal IBM research project, and development of the language essentially stopped when the project was finished (only a few papers documenting it remain), but many of the language's innovative, arguably important ideas have now been implemented in versions of the J programming language
.
Backus was named an IBM Fellow
in 1963, and was awarded a degree honoris causa from the Henri Poincaré University
in Nancy (France) in 1989 and a Draper Prize
in 1993. He retired in 1991 and died at his home in Ashland, Oregon
on March 17, 2007.
High-level programming language
A high-level programming language is a programming language with strong abstraction from the details of the computer. In comparison to low-level programming languages, it may use natural language elements, be easier to use, or be from the specification of the program, making the process of...
(FORTRAN
Fortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...
) and was the inventor of the Backus-Naur form (BNF), the almost universally used notation to define formal language
Formal language
A formal language is a set of words—that is, finite strings of letters, symbols, or tokens that are defined in the language. The set from which these letters are taken is the alphabet over which the language is defined. A formal language is often defined by means of a formal grammar...
syntax
Syntax
In linguistics, syntax is the study of the principles and rules for constructing phrases and sentences in natural languages....
.
He also did research in function-level programming
Function-level programming
In computer science, function-level programming refers to one of the two contrasting programming paradigms identified by John Backus in his work on programs as mathematical objects, the other being value-level programming....
and helped to popularize it.
The IEEE
Institute of Electrical and Electronics Engineers
The Institute of Electrical and Electronics Engineers is a non-profit professional association headquartered in New York City that is dedicated to advancing technological innovation and excellence...
awarded Backus the W.W. McDowell Award
McDowell Award
The W. Wallace McDowell Award is awarded by the IEEE Computer Society for outstanding recent theoretical, design, educational, practical, or other similar innovative contributions that fall within the scope of Computer Society interest...
in 1967 for the development of FORTRAN. He received the National Medal of Science
National Medal of Science
The National Medal of Science is an honor bestowed by the President of the United States to individuals in science and engineering who have made important contributions to the advancement of knowledge in the fields of behavioral and social sciences, biology, chemistry, engineering, mathematics and...
in 1975, and the 1977 ACM Turing Award “for profound, influential, and lasting contributions to the design of practical high-level programming systems, notably through his work on FORTRAN, and for publication of formal procedures for the specification of programming languages.”
Life and career
Backus was born in Philadelphia, PennsylvaniaPhiladelphia, Pennsylvania
Philadelphia is the largest city in the Commonwealth of Pennsylvania and the county seat of Philadelphia County, with which it is coterminous. The city is located in the Northeastern United States along the Delaware and Schuylkill rivers. It is the fifth-most-populous city in the United States,...
and grew up in nearby Wilmington, Delaware
Wilmington, Delaware
Wilmington is the largest city in the state of Delaware, United States, and is located at the confluence of the Christina River and Brandywine Creek, near where the Christina flows into the Delaware River. It is the county seat of New Castle County and one of the major cities in the Delaware Valley...
. He studied at the The Hill School
The Hill School
The Hill School is a preparatory boarding school for boys and girls located in Pottstown, Pennsylvania, about 35 miles northwest of Philadelphia....
in Pottstown, Pennsylvania
Pottstown, Pennsylvania
Pottstown is a borough in Montgomery County, Pennsylvania, United States northwest of Philadelphia and southeast of Reading, on the Schuylkill River. Pottstown was laid out in 1752–53 and named Pottsgrove in honor of its founder, John Potts. The old name was abandoned at the time of the...
, and was apparently not a diligent student. After entering the University of Virginia
University of Virginia
The University of Virginia is a public research university located in Charlottesville, Virginia, United States, founded by Thomas Jefferson...
to study chemistry
Chemistry
Chemistry is the science of matter, especially its chemical reactions, but also its composition, structure and properties. Chemistry is concerned with atoms and their interactions with other atoms, and particularly with the properties of chemical bonds....
, he quit and was conscripted into the U.S. Army. He began medical training at Haverford College
Haverford College
Haverford College is a private, coeducational liberal arts college located in Haverford, Pennsylvania, United States, a suburb of Philadelphia...
and, during an internship at a hospital, he was diagnosed with a cranial bone tumor
Bone tumor
A bone tumor refers to a neoplastic growth of tissue in bone. Abnormal growths found in the bone can be either benign or malignant .-Classification:...
, which was successfully removed; a plate was installed in his head, and he ended medical training after nine months and a subsequent operation to replace the plate with one of his own design.
After moving to New York City
New York City
New York is the most populous city in the United States and the center of the New York Metropolitan Area, one of the most populous metropolitan areas in the world. New York exerts a significant impact upon global commerce, finance, media, art, fashion, research, technology, education, and...
he trained initially as a radio technician and became interested in mathematics. He graduated from Columbia University
Columbia University
Columbia University in the City of New York is a private, Ivy League university in Manhattan, New York City. Columbia is the oldest institution of higher learning in the state of New York, the fifth oldest in the United States, and one of the country's nine Colonial Colleges founded before the...
with a Master's degree in mathematics in 1949, and joined IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...
in 1950. During his first three years, he worked on the Selective Sequence Electronic Calculator (SSEC); his first major project was to write a program to calculate positions of the Moon
Moon
The Moon is Earth's only known natural satellite,There are a number of near-Earth asteroids including 3753 Cruithne that are co-orbital with Earth: their orbits bring them close to Earth for periods of time but then alter in the long term . These are quasi-satellites and not true moons. For more...
. In 1953 Backus developed the language Speedcoding
Speedcoding
Speedcoding or Speedcode was the first higher-level language created for an IBM computer. The language was developed by John Backus in 1953 for the IBM 701 to support computation with floating point numbers....
, the first high-level language created for an IBM computer.
Programming was very difficult, and in 1954 Backus assembled a team to define and develop Fortran for the IBM 704
IBM 704
The IBM 704, the first mass-produced computer with floating point arithmetic hardware, was introduced by IBM in 1954. The 704 was significantly improved over the IBM 701 in terms of architecture as well as implementations which were not compatible with its predecessor.Changes from the 701 included...
computer. Fortran was the first high-level programming language to be put to broad use.
Backus made another, critical contribution to early computer science: during the latter part of the 1950s Backus served on the international committees which developed ALGOL 58
ALGOL 58
ALGOL 58, originally known as IAL, is one of the family of ALGOL computer programming languages. It was an early compromise design soon superseded by ALGOL 60...
and the very influential ALGOL 60
ALGOL 60
ALGOL 60 is a member of the ALGOL family of computer programming languages. It gave rise to many other programming languages, including BCPL, B, Pascal, Simula, C, and many others. ALGOL 58 introduced code blocks and the begin and end pairs for delimiting them...
, which quickly became the de facto worldwide standard for publishing algorithms. Backus developed the Backus-Naur Form (BNF
Backus–Naur form
In computer science, BNF is a notation technique for context-free grammars, often used to describe the syntax of languages used in computing, such as computer programming languages, document formats, instruction sets and communication protocols.It is applied wherever exact descriptions of...
), in the UNESCO
UNESCO
The United Nations Educational, Scientific and Cultural Organization is a specialized agency of the United Nations...
report on ALGOL 58. It was a formal notation able to describe any context-free programming language, and was important in the development of compilers
History of compiler writing
In computing, a compiler is a computer program that transforms source code written in a programming language or computer language , into another computer language...
. This contribution helped Backus win the Turing Award
Turing Award
The Turing Award, in full The ACM A.M. Turing Award, is an annual award given by the Association for Computing Machinery to "an individual selected for contributions of a technical nature made to the computing community. The contributions should be of lasting and major technical importance to the...
.
He later worked on a "function-level" programming language
Function-level programming
In computer science, function-level programming refers to one of the two contrasting programming paradigms identified by John Backus in his work on programs as mathematical objects, the other being value-level programming....
known as FP
FP programming language
FP is a programming language created by John Backus to support the function-level programming paradigm...
which was described in his Turing Award lecture "Can Programming be Liberated from the von Neumann Style
Von Neumann programming languages
A von Neumann language is any of those programming languages that are high-level abstract isomorphic copies of von Neumann architectures . As of 2009, most current programming languages fit into this description, likely as a consequence of the extensive domination of the von Neumann computer...
?". Sometimes viewed as Backus's apology for creating FORTRAN, this paper did less to garner interest in the FP language than to spark research into functional programming
Functional programming
In computer science, functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data. It emphasizes the application of functions, in contrast to the imperative programming style, which emphasizes changes in state...
in general. An FP interpreter
Interpreter (computing)
In computer science, an interpreter normally means a computer program that executes, i.e. performs, instructions written in a programming language...
was distributed with the 4.2BSD
Berkeley Software Distribution
Berkeley Software Distribution is a Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995...
Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
operating system. FP was strongly inspired by Kenneth E. Iverson
Kenneth E. Iverson
Kenneth Eugene Iverson was a Canadian computer scientist noted for the development of the APL programming language in 1962. He was honored with the Turing Award in 1979 for his contributions to mathematical notation and programming language theory...
’s APL
APL programming language
APL is an interactive array-oriented language and integrated development environment, which is available from a number of commercial and noncommercial vendors and for most computer platforms. It is based on a mathematical notation developed by Kenneth E...
, even using a non-standard character set. Backus spent the latter part of his career developing FL
FL programming language
FL is a programming language created at the IBM Almaden Research Center by John Backus, John Williams, and Edward Wimmers in 1989....
(from "Function Level"), a successor to FP. FL was an internal IBM research project, and development of the language essentially stopped when the project was finished (only a few papers documenting it remain), but many of the language's innovative, arguably important ideas have now been implemented in versions of the J programming language
J (programming language)
The J programming language, developed in the early 1990s by Kenneth E. Iverson and Roger Hui, is a synthesis of APL and the FP and FL function-level languages created by John Backus....
.
Backus was named an IBM Fellow
IBM Fellow
An IBM Fellow is an appointed position at IBM made by IBM’s CEO. Typically only 4 to 9 IBM Fellows are appointed each year, at the annual Corporate Technical Recognition Event in May or June. It is the highest honor a scientist, engineer, or programmer at IBM can achieve.The IBM Fellows program...
in 1963, and was awarded a degree honoris causa from the Henri Poincaré University
Henri Poincaré University
The Henri Poincaré University is a public research university located in Nancy, France. UHP is a member of the Nancy-Université federation, belonging to the french Nancy-Metz Academy.- History :...
in Nancy (France) in 1989 and a Draper Prize
Charles Stark Draper Prize
The National Academy of Engineering annually awards the Charles Stark Draper Prize, which is given for the advancement of engineering and the education of the public about engineering. It is one of three prizes that constitute the "Nobel Prizes of Engineering" - the others being the Academy's Russ...
in 1993. He retired in 1991 and died at his home in Ashland, Oregon
Ashland, Oregon
Ashland is a city in Jackson County, Oregon, United States, near Interstate 5 and the California border, and located in the south end of the Rogue Valley. It was named after Ashland County, Ohio, point of origin of Abel Helman and other founders, and secondarily for Ashland, Kentucky, where other...
on March 17, 2007.
Awards and honors
- Named an IBM FellowIBM FellowAn IBM Fellow is an appointed position at IBM made by IBM’s CEO. Typically only 4 to 9 IBM Fellows are appointed each year, at the annual Corporate Technical Recognition Event in May or June. It is the highest honor a scientist, engineer, or programmer at IBM can achieve.The IBM Fellows program...
(1963) - Awarded W.W. McDowell AwardMcDowell AwardThe W. Wallace McDowell Award is awarded by the IEEE Computer Society for outstanding recent theoretical, design, educational, practical, or other similar innovative contributions that fall within the scope of Computer Society interest...
(1967) - Received National Medal of ScienceNational Medal of ScienceThe National Medal of Science is an honor bestowed by the President of the United States to individuals in science and engineering who have made important contributions to the advancement of knowledge in the fields of behavioral and social sciences, biology, chemistry, engineering, mathematics and...
(1975) - Awarded ACM Turing Award (1977)
- Fellow of the American Academy of Arts and SciencesAmerican Academy of Arts and SciencesThe American Academy of Arts and Sciences is an independent policy research center that conducts multidisciplinary studies of complex and emerging problems. The Academy’s elected members are leaders in the academic disciplines, the arts, business, and public affairs.James Bowdoin, John Adams, and...
(1985) - Awarded degree honoris causa from the Université Henri Poincaré (1989)
- Awarded Draper PrizeCharles Stark Draper PrizeThe National Academy of Engineering annually awards the Charles Stark Draper Prize, which is given for the advancement of engineering and the education of the public about engineering. It is one of three prizes that constitute the "Nobel Prizes of Engineering" - the others being the Academy's Russ...
(1993) - Awarded Computer History Museum Fellow AwardComputer History MuseumThe Computer History Museum is a museum established in 1996 in Mountain View, California, USA. The Museum is dedicated to preserving and presenting the stories and artifacts of the information age, and exploring the computing revolution and its impact on our lives.-History:The museum's origins...
(1997) - AsteroidAsteroidAsteroids are a class of small Solar System bodies in orbit around the Sun. They have also been called planetoids, especially the larger ones...
6830 Johnbackus6830 Johnbackus6830 Johnbackus is a main-belt asteroid discovered on May 5, 1991 by S. Otomo and O. Muramatsu at Kiyosato. It is named in memory of John Backus.- External links :*...
named in his honor (June 1, 2007)
External links
- Biography at School of Mathematics and Statistics University of St Andrews, Scotland
- Biography at The History of Computing Project
- Can Programming Be Liberated From the von Neumann Style? 1977 Turing Award Lecture
- The FL project
- New York Times obituary for John W. Backus
- IBM Archives
- About BNF
- Hall of Fellows Computer History MuseumComputer History MuseumThe Computer History Museum is a museum established in 1996 in Mountain View, California, USA. The Museum is dedicated to preserving and presenting the stories and artifacts of the information age, and exploring the computing revolution and its impact on our lives.-History:The museum's origins...
- Obituary: John Backus (1924–2007):Inventor of science's most widespread programming language, Fortran, by Martin Campbell-Kelly, NatureNature (journal)Nature, first published on 4 November 1869, is ranked the world's most cited interdisciplinary scientific journal by the Science Edition of the 2010 Journal Citation Reports...
journal, Volume 446 Number 7139, p. 998, April 2007. - Memorial delivered at the 2007 Conference on Programming Language Design and Implementation