David A. Turner | |
---|---|
Born | |
Died | 19 October 2023 | (aged 77)
Citizenship | United Kingdom |
Education | D.Phil., University of Oxford |
Known for | SASL, Kent Recursive Calculator, Miranda |
Scientific career | |
Fields | Computer science |
Institutions | Queen Mary University of London University of Texas at Austin University of Kent at Canterbury Middlesex University |
Doctoral advisor | Christopher Strachey and Dana Scott |
Website | www |
David A. Turner (26 January 1946 – 19 October 2023) was a British computer scientist. He is best known for designing and implementing three programming languages, including the first for functional programming based on lazy evaluation, combinator graph reduction, and polymorphic types: SASL (1972), Kent Recursive Calculator (KRC) (1981), and the commercially supported Miranda (1985).
Turner's work on Miranda had a strong influence on the later Haskell.[1] Turner first implemented SASL using the abstract SECD machine, but then reimplemented them in 1978 using SKI combinator calculus.[2] This approach was used by Thomas Johnsson and Lennart Augustsson in the design of the g-machine[3] that evolved to become the standard mechanism for lazy evaluation in call-by-need languages.
In 1981, Turner received the Doctor of Philosophy (D.Phil.) from the University of Oxford, for his dissertation "Aspects of the Implementation of Programming Languages: The Compilation of an Applicative Language to Combinatory Logic", supervised by Christopher Strachey and Dana Scott.[4][5][6] He held professorships at Queen Mary College, London, University of Texas at Austin and the University of Kent at Canterbury, where he spent most of his career and retained the title of Emeritus Professor of Computation.
Turner was involved with developing international standards in programming and informatics, as a member of the International Federation for Information Processing (IFIP) IFIP Working Group 2.1 on Algorithmic Languages and Calculi,[7] which specified, maintains, and supports the programming languages ALGOL 60 and ALGOL 68.[8] He was also a member of the IFIP Working Group 2.8 on Functional Programming, which related to his creation of Miranda.[9]
Turner was an emeritus professor at the University of Kent and Middlesex University in England.[10][11]
Turner's parents were second-generation Jewish immigrants, and Turner himself was a strong advocate for equal rights for Palestinians. He was an executive member of ICAHD UK[12] and frequently spoke on the topic.[13] Turner died on 19 October 2023, at the age of 77.[4]
Publications
[edit]- Turner, David A. SASL language manual. Tech. rept. CS/75/1. Department of Computational Science, University of St Andrews, 1975.
- Turner, D.A. (1979). "A New Implementation Technique for Applicative Languages". Software: Practice and Experience. 9: 31–49. doi:10.1002/spe.4380090105. S2CID 40541269.
- Another Algorithm for Bracket Abstraction, D. A. Turner, Journal of Symbolic Logic, 44(2):267–270, 1979.
- Functional Programming and its Applications, D. A. Turner, Cambridge University Press 1982.
- A Parser Generator for use with Miranda, ACM Symposium on Applied Computing, pages 401–407, Philadelphia, USA, February 1996.
- Elementary Strong Functional Programming, D. A. Turner, in R. Plasmeijer, P. Hartel, eds, "First International Symposium on Functional Programming Languages in Education", Lecture Notes in Computer Science, volume 1022, pages 1–13, Springer-Verlag, 1996.
- Ensuring Streams Flow, Alastair Telford and David Turner, in Johnson, ed., "Algebraic Methodology and Software Technology", 6th International Conference, AMAST '97, Sydney Australia, December 1997, Lecture Notes in Computer Science, volume 1349, pages 509–523. AMAST, Springer-Verlag, December 1997.
- Ensuring the Productivity of Infinite Structures, A.J.Telford, D.A.Turner, "Technical Report TR 14-97", 37 pages, Computing Laboratory, University of Kent, March 1998. Under submission to "Journal of Functional Programming".
- Ensuring Termination in ESFP, A. J. Telford and D. A. Turner, in "15th British Colloquium in Theoretical Computer Science", page 14, Keele, April 1999. To appear in "Journal of Universal Computer Science".
- A Hierarchy of Elementary Languages with Strong Normalisation Properties, A.J.Telford, D.A.Turner, "Technical Report TR 2-00", 66 pages, University of Kent Computing Laboratory, January 2000.
- Total Functional Programming, Keynote address, pp 1–15, SBLP 2004, Rio de Janeiro, May 2004.
- Church's Thesis and Functional Programming, in A. Olszewski ed., "Church's Thesis after 70 years'", pages 518-544, Ontos Verlag, 2006.
References
[edit]- ^ Hudak, Paul; Hughes, John (2007). "A History of Haskell: being lazy with class".
- ^ D. A. Turner (1979). "A new implementation technique for applicative languages". Software: Practice and Experience. 9: 31–49. doi:10.1002/spe.4380090105.
- ^ Lennart Augustsson; Thomas Johnsson (November 1989). "Parallel graph reduction with the (V , G)-machine". Proceedings of the fourth international conference on Functional programming languages and computer architecture - FPCA '89. pp. 202–213. doi:10.1145/99370.99386. ISBN 0-89791-328-0.
- ^ a b Sarah Nicholas (24 November 2023). "David Turner obituary". The Guardian.
- ^ Turner, David. "Genealogy". David Turner homepage. Retrieved 28 November 2023.
- ^ "David A. Turner". Mathematics Genealogy Project. Retrieved 28 November 2023.
- ^ Jeuring, Johan; Meertens, Lambert; Guttmann, Walter (17 August 2016). "Profile of IFIP Working Group 2.1". Foswiki. Retrieved 14 October 2020.
- ^ Swierstra, Doaitse; Gibbons, Jeremy; Meertens, Lambert (2 March 2011). "ScopeEtc: IFIP21: Foswiki". Foswiki. Retrieved 14 October 2020.
- ^ Ralf Hinze (2016). "WG2.8 Functional Programming".
- ^ "David Turner – Inventor of Miranda". lambda DAλS. 2017. Retrieved 21 November 2023.
- ^ "David Turner – Designer of SASL, KRC and Miranda". CODE SYNC. 2020. Retrieved 21 November 2023.
- ^ "Forced Displacement in the Occupied Palestinian Territories". Israeli Committee Against House Demolitions. 2018.
- ^ "Prospects for a solution to the Israel-Palestine conflict". Central London Humanists. 23 November 2017.
External links
[edit]- Official website, University of Kent at Canterbury
- Staff page at Middlesex University archived on Archive.org
- Miranda functional programming language