Kenneth E. Iverson
||This article includes a list of references, but its sources remain unclear because it has insufficient inline citations. (May 2009)|
|Kenneth Eugene Iverson|
December 17, 1920|
Camrose, Alberta, Canada
|Died||October 19, 2004
Toronto, Ontario, Canada
|Alma mater||Queen's University
|Doctoral advisor||Wassily Leontief and Howard Aiken|
|Known for||Programming languages: APL, J|
|Notable awards||IBM Fellow
Harry H. Goode Memorial Award
Computer Pioneer Award
Kenneth Eugene Iverson (17 December 1920 – 19 October 2004) 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. The Iverson Award for contributions to APL was named in his honor.
Ken Iverson was born on December 17, 1920 in Camrose, a town in central Alberta, Canada. His parents were farmers of Norwegian descent who came to Alberta from North Dakota. While he showed an early aptitude for mathematics, teaching himself calculus while a teenager, he left school after the 9th grade to work on his parents' farm. However, during World War II, while he served in the Royal Canadian Air Force, he qualified for a high school diploma by taking correspondence courses. After the war, he was able to enter Queen's University in Kingston, Ontario and graduated in 1950 with a Bachelor's degree in Mathematics and Physics.
Continuing his education at Harvard University, he received a Master's degree in 1951 in Mathematics and started working with Howard Aiken and Wassily Leontief. Howard Aiken had developed the Harvard Mark I, one of the first large-scale digital computers, while Wassily Leontief was an economist who was developing the input-output model of economic analysis, work for which he would later receive the Nobel prize. Leontief's model required large matrices and Iverson worked on programs that could evaluate these matrices on the Harvard Mark IV computer. Iverson received a Ph.D. in Applied Mathematics in 1954 with a dissertation based on this work.
Iverson stayed at Harvard as an assistant professor for the next five years, but failed to get tenure.
Iverson was hired by IBM in 1960 to develop his notation into a programming language for the IBM System/360.
In 1980, Iverson left IBM for I. P. Sharp Associates, a leading Canadian APL timesharing company, where he, among other things, participated in the further development of the APL programming language. In 1987 he retired from I. P. Sharp.
In the summer of 1989, Roger Hui and Arthur Whitney, along with Iverson, produced a short prototype interpreter which would later be the seed for the J language, a variant of APL. Iverson and Roger Hui would continue collaborating on J for the next 15 years.
Ken Iverson died of a stroke on October 19, 2004 at the age of 83.
Iverson developed a mathematical notation that became known as Iverson Notation for manipulating arrays that he taught to his students, and described in his 1962 book A Programming Language. In 1960, he began work for IBM and working with Adin Falkoff, created APL based on the notation he had developed. He was named an IBM Fellow in 1970.
In late 1989, Ken Iverson and Roger Hui began collaboration on an advanced continuation of an APL-like language which they called J, first demonstrated publicly at the APL90 conference the next year. The improvements were intended to fix some of the persistent character set issues that plagued APL since its inception, and to add new advanced features such as functional programming, arrays of variables, and support for parallel MIMD operations, some of which do not appear in APL today. It was intended that the J language be an improvement over existing APL. The J interpreter and language continues to evolve today. A version is available from J Software under the GPL3 license.
- John Wiley & Sons, ISBN 0-471-43014-5
- Citation in Corporate Technical Recognition Event (CTRE) booklet, 3 June 1997
- APL/?, by Kenneth E. Iverson and Roger Hui, APL90 Conference Proceedings, ACM, 1990
- J Software Source Code page
Major publications 
- A Programming Language, John Wiley and Sons, (1962)
- Automatic Data Processing (with Frederick Brooks), John Wiley and Sons (1963)
- A Formal Description of SYSTEM/360, (with A. D. Falkoff and E. H. Sussenguth), IBM Systems Journal, vol. 3. no. 3, 1964, pp. 198–262.
- Elementary Functions: an algorithmic treatment (Science Research Associates, Inc.) (1966)
- APL\360:User's Manual (with A. D. Falkoff), IBM, 1968
- APL in Exposition, IBM Philadelphia Scientific Center Tech. Report No. 320-3010, IBM, 1972.
- The Design of APL, (with A. D. Falkoff) IBM J. Research and Development, vol. 17, no. 4, 1973, pp. 324–334.
- Notation as a Tool of Thought, Comm. ACM, vol. 23, no. 8, 1980, pp. 444–465.
- A Source Book In APL (with Adin D. Falkoff) (APL Press) (1981)
- Tangible Math (Iverson Software Inc.) (1990)
- A Personal View of APL, IBM System Journal, vol. 30, no. 4, 1991, pp. 582–593.
- The ISI Dictionary of J (Iverson Software Inc.) (1991)
- IBM Fellow (IBM) (1970)
- Harry H. Goode Memorial Award (IEEE Computer Society) (1975)
- Turing Award (Association for Computing Machinery) (1979)
- Computer Pioneer Award [Charter recipient] (IEEE Computer Society) (1982)
- Honorary doctorate, York University, Toronto, 1998
See also 
- A Programming Language, now in HTML
- A Formal Description of SYSTEM/360 by Adin D. Falkoff, Kenneth E. Iverson, and Edward H. Sussenguth, Jr., IBM Systems Journal, Volume 3, Number 3, 1964. (dead link behind paywall; Wayback Machine backup link
- The Design of APL by Adin D. Falkoff and Kenneth E. Iverson, IBM Journal of Research and Development, Volume 17, Number 4, 1973. (dead link behind paywall; Wayback Machine backup link)
- The Evolution of APL, by Adin D. Falkoff and Kenneth E. Iverson. ACM SIGPLAN Notices 13, 1978-08.
- Notation as a Tool of Thought (1979 Turing Award Lecture) by Kenneth E. Iverson, Communications of the ACM, Volume 23, Number 8, August 1980.
- A Personal View of APL by Kenneth E. Iverson, IBM Systems Journal, Volume 30, Number 4, 1991. (dead link behind paywall; Wayback Machine backup link)
|Wikiquote has a collection of quotations related to: Kenneth E. Iverson|
- Essays/Kenneth_E._Iverson - from Jsoftware website
- Kenneth E. Iverson: This page at the Digital Bibliography and Library Project lists Kenneth Iverson's publications.
- Short Biography at the science.ca website
- Obituary in The Times
- Obituary at the Association for Computing Machinery
- Ehud Lamm's obituary at Lambda the Ultimate
- Remembering Kenneth E. Iverson Memorial issue of Vector, the Journal of the British APL Association
- A Celebration of the life of Kenneth Eugene Iverson
- Memorial Service for Kenneth E. Iverson in Toronto (MySpace video)
- Ken Iverson on the WikiWikiWeb