Functional programming is a paradigm known for decades. It is gaining popularity again, due to the rise of purely functional languages like Haskell. You may wonder, how it could be useful in PHP? Using a few techniques and a slight change of perspective you will be able to write code that is cleaner and easier to understand. You will be able to design and implement huge solutions by composing them from small and well-tested parts.