# A World Without Assignment

> Last updated: 2014-03-20

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.

Despite being object oriented, Ruby easily accommodates pure
functional approaches. This talk will demonstrate how common
programming tasks can be accomplished without assignment or
mutation. Ruby and Scheme (a Lisp dialect) will be used for
examples. I’ll also discuss some of the great resources available for
those interested in digging deeper into functional programming.
