O Que É Lazy Evaluation?
Lazy evaluation é uma estratégia em que expressões não são calculadas quando são vinculadas, mas apenas quando seus resultados são requeridos pela primeira vez. Uma computação adiada é tipicamente mantida em um thunk e forçada sob demanda, muitas vezes armazenando o resultado em cache para reuso. Isso permite que programas trabalhem com estruturas infinitas e evitem trabalho desnecessário.
Por que importa
Adiar a computação pode pular trabalho que nunca é usado e torna práticas estruturas de dados infinitas ou autorreferenciais. O trade-off é um tempo e uma memória mais difíceis de prever, já que thunks não forçados podem se acumular.
Guias relacionados
What Is a Thunk?A thunk is a deferred computation wrapped as a value, evaluated only when forced, often used to implement laz…
What Is Memoization?Memoization caches the result of a function for a given set of inputs so repeated calls with the same argumen…
What Is a Generator?A generator is a function that can pause and resume, producing a sequence of values one at a time on demand r…