Christopher Strachey | |
---|---|
![]() Early computer printout of Christopher Strachey in theBodleian Library, Oxford | |
Born | (1916-11-16)16 November 1916 Hampstead, England |
Died | 18 May 1975(1975-05-18) (aged 58) Oxford, England |
Citizenship | British |
Education | Gresham's School |
Alma mater | University of Cambridge (BA) |
Known for | CPL,denotational semantics,Fundamental Concepts in Programming Languages,time-sharing |
Parent(s) | Oliver Strachey Ray Costelloe |
Scientific career | |
Fields | Computer Science |
Institutions | University of Cambridge, University of Oxford St Edmund's School, Canterbury Harrow School |
Doctoral students | Peter Mosses David Turner |
Christopher S. Strachey (/ˈstreɪtʃi/; 16 November 1916 – 18 May 1975) was a Britishcomputer scientist.[1][2][3] He was one of the founders ofdenotational semantics, and a pioneer inprogramming language design and computertime-sharing.[4] He has also been credited as possibly being the first developer of avideo game[5] and for coining terms such aspolymorphism andreferential transparency that are still widely used by developers today.[6] He was a member of theStrachey family, prominent in government, arts, administration, and academia.
Christopher Strachey was born on 16 November 1916 toOliver Strachey andRachel (Ray) Costelloe inHampstead, England. Oliver Strachey was the son ofRichard Strachey and the great-grandson ofSir Henry Strachey, 1st Baronet. His elder sister was the writerBarbara Strachey. In 1919, the family moved to 51Gordon Square. The Stracheys belonged to theBloomsbury Group whose members includedVirginia Woolf,John Maynard Keynes and Strachey's uncleLytton Strachey. At 13, Strachey went toGresham's School,Holt where he showed signs of brilliance but in general performed poorly. He was admitted toKing's College, Cambridge (the same college asAlan Turing) in 1935 where he continued to neglect his studies. Strachey studiedmathematics and then transferred tophysics. At the end of his third year atCambridge, Strachey suffered a nervous breakdown, possibly related to coming to terms with his homosexuality. He returned to Cambridge but managed only a "lower second" in theNatural Sciences Tripos.[7]
Unable to continue his education, Strachey joinedStandard Telephones and Cables (STC) as a research physicist. His first job was providing mathematical analysis for the design ofelectron tubes used inradar. The complexity of the calculations required the use of adifferential analyser. This initial experience with a computing machine sparked Strachey's interest and he began to research the topic. An application for a research degree at the University of Cambridge was rejected and Strachey continued to work at STC throughout theSecond World War. After the war he fulfilled a long-standing ambition by becoming a schoolmaster atSt Edmund's School, Canterbury, teaching mathematics and physics. Three years later he was able to move to the more prestigiousHarrow School in 1949, where he stayed for three years.
In January 1951, a friend introduced him toMike Woodger of theNational Physical Laboratory (NPL). The lab had successfully built a reduced version of Alan Turing'sAutomatic Computing Engine (ACE) the concept of which dated from 1945: thePilot ACE. In his spare time, Strachey developeda checkers video game in May 1951. This may have been the first video game. The game completely exhausted the Pilot ACE's memory. The draughts program failed due to program errors when it first ran at NPL on 30 July 1951.[8] When Strachey heard about theManchester Mark 1, which had a much bigger memory, he asked his former fellow-student Alan Turing for the manual and transcribed his program into theoperation codes of that machine by around October 1951. By the summer of 1952, the program could "play a complete game of Draughts at a reasonable speed".[9][10] While he did not give this game a name,Noah Wardrip-Fruin named it "M. U. C. Draughts."[11]
Strachey programmed the firstComputer music in England – the earliest recording of music played by a computer: a rendition of the British National Anthem "God Save the King" on the University of Manchester'sFerranti Mark 1 computer, in 1951. Later that year, short extracts of three pieces were recorded there by aBBC outside broadcasting unit: "God Save the King", "Baa, Baa, Black Sheep", and "In the Mood". Researchers at theUniversity of Canterbury, Christchurch restored the acetate master disc in 2016 and the results may be heard onSoundCloud.[12][13]
During the summer of 1952, Strachey programmed alove letter generator for theFerranti Mark 1 that is known as the first example ofcomputer-generated literature.[14]
In May 1952, Strachey gave a two-part talk on "the study of control in animals and machines" ("cybernetics") for theBBC Home Service'sScience Survey programme.[15][16]
Strachey worked for theNational Research Development Corporation (NRDC) from 1952 to 1959. While working on the St. Lawrence Seaway project, he was able to visit several computer centres in the United States and catalogue theirinstruction sets. Later, he worked on programming both theElliott 401 computer and theFerranti Pegasus computer. Together withDonald B. Gillies, he filed three patents in computing design, including the design of base registers for program relocation. He also worked on the analysis of vibration in aircraft, working briefly withRoger Penrose.
In 1959, Strachey left NRDC to become a computer consultant working for NRDC,EMI,Ferranti, and other organisations on several wide-ranging projects. This work included logical design for computers, providingautocode and, later, the design ofhigh-level programming languages. For a contract to produce the autocode for theFerranti Orion computer, Strachey hiredPeter Landin who became his one assistant for the duration of Strachey's consulting period.
Strachey developed the concept oftime-sharing in 1959.[17][18] He filed a patent application in February that year and gave a paper entitled "Time Sharing in Large Fast Computers" at the inauguralUNESCO Information Processing Conference in Paris where he passed the concept on toJ. C. R. Licklider.[19][20] This paper is credited by theMIT Computation Center in 1963 as "the first paper on time-shared computers".[4]
In 1962, while remaining a consultant, he accepted a position at theUniversity of Cambridge.
In 1965, Strachey accepted a position at theUniversity of Oxford as the first director of theProgramming Research Group and later the university's first professor of computer science and fellow ofWolfson College, Oxford. He collaborated withDana Scott.
Strachey was elected as a distinguished fellow of theBritish Computer Society in 1971 for his pioneering work in computer science.
In 1973, Strachey (along withRobert Milne) began to write an essay submitted to theAdams Prize competition, after which they continued work to revising it into book form. Strachey can be seen and heard in the recorded Lighthill debate on AI[21] (seeLighthill report).
He developed theCombined Programming Language (CPL). His influential set of lecture notesFundamental Concepts in Programming Languages formalised the distinction betweenL- and R- values (as seen in theC programming language). Strachey also coined the termcurrying,[citation needed] although he did not invent the underlying concept.
He was instrumental in the design of theFerranti Pegasus computer.
The macro languagem4 derives much from Strachey's GPM (General Purpose Macrogenerator), one of the earliestmacro expansion languages.[22]
Strachey contracted an illness diagnosed asjaundice, which after a period of seeming recovery returned, and he died of infectioushepatitis on 18 May 1975.[17] After his death, Strachey was succeeded by SirTony Hoare as Head of the Programming Research Group at Oxford, starting in 1977.
TheDepartment of Computer Science at theUniversity of Oxford has aChristopher Strachey Professorship of Computing,[23][24] which has been held by the following:
In November 2016, aStrachey 100 event was held at Oxford University to celebrate the centenary of Strachey's birth,[27] including a viewing at theWeston Library in Oxford of the Christopher Strachey archive held in theBodleian Library collection.[28]
What Strachey proposed in his concept of time-sharing was an arrangement that would preserve the direct contact between programmer and machine, while still achieving the economy of multiprogramming.
In 1959 Christopher Strachey in the United Kingdom and John McCarthy in the United States independently described something they called time-sharing.
in 1960 'time-sharing' as a phrase was much in the air. It was, however, generally used in my sense rather than in John McCarthy's sense of a CTSS-like object.