Lazy functional programming refers to a style of programming that usually combines the following features:
Lazy functional programming has its roots in Church's -calculus. The relationship to programming languages seems to have begun with the work of McCarthy on Lisp around 1960, and the work of Landin in 1966.
Nowadays, this style of programming is typified by the programming language Haskell.
Turner, D. A. “Some History of Functional Programming Languages.” In Trends in Functional Programming, edited by Hans-Wolfgang Loidl and Ricardo Peña, 7829:1–20. Lecture Notes in Computer Science. Berlin, Heidelberg: Springer Berlin Heidelberg, 2013. https://doi.org/10.1007/978-3-642-40447-4_1.
[pdf]
@inproceedings{turner_2013,
location = {Berlin, Heidelberg},
title = {Some History of Functional Programming Languages},
volume = {7829},
doi = {10.1007/978-3-642-40447-4_1},
series = {Lecture Notes in Computer Science},
pages = {1--20},
booktitle = {Trends in Functional Programming},
publisher = {Springer Berlin Heidelberg},
author = {Turner, D. A.},
editor = {Loidl, Hans-Wolfgang and Peña, Ricardo},
date = {2013}
}