Learn Functional Programming with Elixir: New Foundations for a New World (The Pragmatic Programmers)