An expression is referentially transparent when replacing it with its value leaves program behavior unchanged. Pure functions have this property: the same inputs always produce the same output. section 9.1
Replace a pure-function call
A call to a pure function can be replaced by the result it returns without changing behavior. This makes code easier to reason about and test. section 9.1
Referential transparency helps make code:
- Easier to optimize and refactor. section 9.1
- More predictable in testing and debugging; without side effects, an entire program can be deterministic. section 9.1








