Memoization
In plain terms
Caching a function's results so repeated calls with the same input are instant.
Going deeper
Memoization stores computed results keyed by inputs, so expensive pure functions skip recomputation on repeat calls. It trades memory for speed.
Under the hood
Only safe for pure functions; central to top-down dynamic programming and to UI render optimization.
Examples
React useMemo, dynamic programming, fibonacci caching, lru_cache in Python.
Think of it like...
Like writing down a hard sum's answer so you never have to recompute it.