David John WheelerFRS(9 February 1927 – 13 December 2004)[10][11][12]was acomputer scientistand professor of computer science at theUniversity of Cambridge.[13][14][15][16]
David Wheeler | |
---|---|
Born | David John Wheeler 9 February 1927[5] Birmingham,England |
Died | 13 December 2004 Cambridge,England | (aged 77)
Nationality | British |
Education | University of Cambridge(MA, PhD) |
Known for | inventingsubroutines Burrows–Wheeler transform(BWT)[6] Tiny Encryption Algorithm(TEA)[7] Wheeler Jump[8] WAKE EDSAC[9] |
Awards | Fellow of the Royal Society(1981) Computer Pioneer Award(1985) Fellow, Computer History Museum (2003)[1] |
Scientific career | |
Fields | Computer Science |
Institutions | University of Cambridge Computer Lab, Cambridge Darwin College, Cambridge |
Thesis | Automatic Computing With EDSAC(1951) |
Doctoral advisor | Maurice Wilkes[2] |
Doctoral students |
Education
editWheeler was born inBirmingham,England, the second of the three children of (Agnes) Marjorie,néeGudgeon, and Arthur Wheeler, a press tool maker, engineer, and proprietor of a small shopfitting firm.[17]He was educated at a local primary school in Birmingham and then went on toKing Edward VI Camp Hill Schoolafter winning a scholarship in 1938. His education was disrupted byWorld War II,and he completed his sixth form studies atHanley High School.[17]In 1945 he gained a scholarship to study theCambridge Mathematical TriposatTrinity College, Cambridge,graduating in 1948.[18]He was awarded the world's first[19]PhD in computer science in 1951.[19][20]
Career
editWheeler's contributions to the field included work on theElectronic Delay Storage Automatic Calculator(EDSAC) in the 1950s[21]and theBurrows–Wheeler transform(published 1994). Along withMaurice WilkesandStanley Gill,he is credited with the invention around 1951 of thesubroutine(which they referred to as theclosed subroutine), and gave the first explanation of how to design software libraries;[8]as a result, thejump to subroutineinstruction was often called aWheeler Jump.Wilkes published a paper in 1953 discussing relativeaddressingto facilitate the use of subroutines.[22](However,Turinghad discussed subroutines in a paper of 1945 on design proposals for the NPLACE,going so far as to invent the concept of a return address stack.[23])
He was responsible for the implementation of theCAP computer,the first to be based on security capabilities. Incryptography,he was the designer ofWAKEand the co-designer of theTEAandXTEAencryption algorithms together withRoger Needham.In 1950, with Maurice Wilkes, he used EDSAC to solve adifferential equationrelating togene frequenciesin a paper byRonald Fisher.[24]This represents the first use of a computer for a problem in the field ofbiology.
He became aFellowofDarwin College, Cambridgein 1964 and formally retired in 1994, although he continued to be an active member of theUniversity of Cambridge Computer Laboratoryuntil his death.
Personal life
editOn 24 August 1957 Wheeler married astrophysics research student Joyce Margaret Blackler, who had used EDSAC for her own mathematical investigations as a research student from 1955. Together they had two daughters and a son.
Wheeler died of aheart attackon 13 December 2004 while cycling home from the Computer Laboratory.[17]
Recognition and legacy
editWheeler:
- In 1981 was elected a fellow of theRoyal Society
- In 1985 received aComputer Pioneer Awardfor his contributions toassembly languageprogramming
- In 1994 was inducted as a Fellow of theAssociation for Computing Machinery
- In 2003 was named aComputer History MuseumFellow Award recipient "for his invention of the closed subroutine, and for his architectural contributions to ILLIAC, the Cambridge Ring, and computer testing"[1]
The Computer Laboratory at the University of Cambridge annually holds the "Wheeler Lecture", a series of distinguished lectures named after him.[25]
Quotes
editWheeler is often quoted as saying "All problems in computer science can be solved by another level ofindirection."[26]or "All problems in computer science can be solved by another level of indirection, except for the problem of too many layers of indirection."[27]This has been called thefundamental theorem of software engineering.
Another quotation attributed to him is "Compatibilitymeans deliberately repeating other people's mistakes. "[28]
References
edit- ^ab"David John Wheeler: 2003 Fellow".Computer History Museum.Retrieved15 May2020.
- ^abcdeDavid Wheelerat theMathematics Genealogy Project
- ^Li, Gong; Wheeler, David J. (1990). "A matrix key-distribution scheme".Journal of Cryptology.2(1): 51–59.CiteSeerX10.1.1.51.1279.doi:10.1007/bf02252869.S2CID30468228.
- ^Hopper, Andy (1978).Local Area Computer Communication Networks(PhD thesis). University of Cambridge.
- ^Campbell-Kelly, Martin(2004). "Wheeler, David John (1927–2004)".Oxford Dictionary of National Biography.Vol. 1 (online ed.). Oxford University Press.doi:10.1093/ref:odnb/94633.(Subscription orUK public library membershiprequired.)
- ^Burrows, Michael;Wheeler, David J.(1994),A block sorting lossless data compression algorithm,Technical Report 124, Digital Equipment Corporation
- ^Wheeler, D. J.; Needham, R. M. (1995). "TEA, a tiny encryption algorithm".Fast Software Encryption.Lecture Notes in Computer Science. Vol. 1008. p. 363.doi:10.1007/3-540-60590-8_29.ISBN978-3-540-60590-4.
- ^abWheeler, D. J.(1952)."The use of sub-routines in programmes".Proceedings of the 1952 ACM national meeting (Pittsburgh) on - ACM '52.p. 235.doi:10.1145/609784.609816.Archived fromthe originalon 28 June 2015.
- ^Wheeler, D. J. (1992). "The EDSAC programming systems".IEEE Annals of the History of Computing.14(4): 34–40.doi:10.1109/85.194053.S2CID23064533.
- ^Campbell-Kelly, M.(2006)."David John Wheeler. 9 February 1927 -- 13 December 2004: Elected FRS 1981".Biographical Memoirs of Fellows of the Royal Society.52:437–453.doi:10.1098/rsbm.2006.0030.
- ^"David Wheeler, 1927–2004".Obituaries. Cambridge Computer Laboratory.Retrieved21 July2011.
- ^"Professor David Wheeler".Obituaries.The Independent.London. 22 December 2004.Retrieved21 July2011.[dead link]
- ^David Wheelerpublications indexed byMicrosoft Academic
- ^Wheeler, D. J. (1994). "A bulk data encryption algorithm".Fast Software Encryption.Lecture Notes in Computer Science. Vol. 809. pp. 127–134.doi:10.1007/3-540-58108-1_16.ISBN978-3-540-58108-6.
- ^Hopper, A.; Wheeler, J. (October 1979). "Binary Routing Networks".IEEE Transactions on Computers.C-28(10): 699–703.doi:10.1109/tc.1979.1675237.ISSN0018-9340.S2CID20076347.
- ^Hopper, A.; Wheeler, D. (April 1979). "Maintenance of Ring Communication Systems".IEEE Transactions on Communications.27(4): 760–761.doi:10.1109/tcom.1979.1094451.ISSN0090-6778.
- ^abcCampbell-Kelly, Martin (3 January 2008)."Wheeler, David John (1927–2004), computer scientist".Oxford Dictionary of National Biography.Vol. 1 (online ed.). Oxford University Press.doi:10.1093/ref:odnb/94633.(Subscription orUK public library membershiprequired.)
- ^David J. WheeleratDBLPBibliography Server
- ^abHey, Tony;Pápay, Gyuri (2015). "The Software Is In The Holes".The Computing Universe: A Journey through a Revolution.Cambridge University Press.p. 47.ISBN9780521766456.
- ^The Preparation of Programs for an Electronic Digital Computer byMaurice Wilkes,David Wheeler, andStanley Gill;(original 1951); reprinted with new introduction by Martin Campbell-Kelly; 198 pp.; illus; biblio; bios; index;ISBN0-262-23118-2
- ^Wilkes, M.V.; Renwick, W.; Wheeler, D.J. (1958)."The design of the control unit of an electronic digital computer".Proceedings of the IEE - Part B: Radio and Electronic Engineering.105(20): 121–128.doi:10.1049/pi-b-1.1958.0267– via ResearchGate.
- ^Proceedings of the Cambridge Philosophical Society, Vol 49, Pt 1, pgs 84-9
- ^Turing, Alan M.(1945),Report by Dr. A.M. Turing on proposals for the development of an Automatic Computing Engine (ACE): Submitted to the Executive Committee of the NPL in February 1946reprinted inCopeland, B. J.,ed. (2005),Alan Turing's Automatic Computing Engine,Oxford: Oxford University Press, p. 383,ISBN0-19-856593-3
- ^Fisher, R. A. (December 1950)."Gene Frequencies in a Cline Determined by Selection and Diffusion"(PDF).Biometrics.6(4): 353–361.doi:10.2307/3001780.hdl:2440/15146.JSTOR3001780.PMID14791572.
- ^"Computer Laboratory:Wheeler Lectures".Retrieved15 October2013.
- ^ Spinellis, Diomidis (2007)."Another level of indirection".In Oram, Andy; Wilson, Greg (eds.).Beautiful code.Sebastopol, CA: O'Reilly.ISBN978-0-596-51004-6.
- ^Bjarne, Stroustrup.The C++ Programming Language - 4th edition.p. Preface.
- ^Cofta, Piotr (27 September 2007).Trust, Complexity and Control: Confidence in a Convergent World.John Wiley & Sons.ISBN9780470517840.
External links
edit- Oral history interview with David Wheeler, 14 May 1987.Charles Babbage Institute,University of Minnesota. Wheeler discusses projects that were run on EDSAC, user-oriented programming methods, and the influence of EDSAC on theILLIAC,theORDVAC,and theIBM 701.He also notes visits byDouglas Hartree,Nelson Blackman (of ONR),Peter Naur,Aad van Wijngarden,Arthur van der Poel,Friedrich Bauer,andLouis Couffignal.
- Oral history interview with Gene H. Golub.Charles Babbage Institute,University of Minnesota. Golub discusses the construction of theILLIACcomputer, the work of Ralph Meager and David Wheeler on the ILLIAC design, British computer science, programming, and the early users of the ILLIAC at the University of Illinois.
- Copeland, B. J.,ed. (2005),Alan Turing's Automatic Computing Engine,Oxford: Oxford University Press,ISBN0-19-856593-3