A World Without Assignment
In OO, assignment is one of our main tools. Most developers learn how
to store values in variables shortly after learning “Hello World”. By
contrast, functional programming makes much less use of assignment and
mutation. Instead techniques like function composition, recursion, and
anonymous functions are used to produce the same results that OO
programmers produce with side effects.
Mountain West Ruby Conf 2014