David Turner (computer scientist). 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. Turner first implemented SASL using the abstract SECD machine, but then reimplemented them in 1978 using SKI combinator calculus. This approach was used by Thomas Johnsson and Lennart Augustsson in the design of the g-machine 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. 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, which specified, maintains, and supports the programming languages ALGOL 60 and ALGOL 68. He was also a member of the IFIP Working Group 2.8 on Functional Programming, which related to his creation of Miranda.

Turner was an emeritus professor at the University of Kent and Middlesex University in England.

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 and frequently spoke on the topic. Turner died on 19 October 2023, at the age of 77.

Publications
 Turner, David A. SASL language manual. Tech. rept. CS/75/1. Department of Computational Science, University of St Andrews, 1975.
 
 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

External links
 , University of Kent at Canterbury
 Staff page at Middlesex University archived on Archive.org
 Miranda functional programming language

1946 births
2023 deaths
Academics of Queen Mary University of London
Academics of the University of Kent
Academics of Middlesex University
British computer scientists
Members of the Department of Computer Science, University of Oxford
Alumni of Brasenose College, Oxford
Programming language designers
Programming language researchers