Lazy evaluation is an evaluation strategy which delays the evaluation of an expression until its value is needed and it may also implement stratgies to avoid repeated evaluations1
[1] Lazy evaluation, Wikipedia. (2020). https://en.wikipedia.org/w/index.php?title=Lazy_evaluation&oldid=943229419 (accessed March 10, 2020).