🎉 October Learning Month — learn a new software term every day!
An interactive flashcard trainer for software engineering terms.

Lazy Evaluation

In plain terms

Delaying computation until its result is actually needed.

Going deeper

Lazy evaluation defers work until the value is used, avoiding wasted computation and enabling infinite data structures. Haskell uses it by default.

Under the hood

Enables working with infinite streams and short-circuiting, but can make memory usage and timing harder to predict (space leaks).

Examples

Haskell, Python generators, infinite sequences, database query lazy loading.

Think of it like...

Like not cooking a dish until someone actually orders it.

Feedback & Bug Report