midScala
What is lazy evaluation in Scala?
Updated May 24, 2026
Short answer
Lazy evaluation delays computation until needed.
Deep explanation
Using lazy val defers execution, improving performance for expensive computations.
Real-world example
Used in loading large configurations.
Common mistakes
- Assuming lazy values are recomputed.
Follow-up questions
- Is lazy thread-safe?
- Difference between val and lazy val?