A mathematical function returns the same result every time.
The functional world has 2 characteristics.
- The function has no side effects. Take input and produce output. -> called pure function.
- All data structure is immutable. -> There is no mutable state.
A functional programming language provides a bridge between pure functional work and the messy real world.
Functional programming is not magic. There are still many problems that the common programming world faces.
One nice thing is that the functional programming is working great in terms of thread-safe because there is no state with which another thread collides.
Functional programming is a strict contact, which works.
Reference: GOTO 2018 • Functional Programming in 40 Minutes • Russ Olsen