Learn how to think and write code like a functional programmer. With this practical guide software developers familiar with objectoriented programming will dive into the core concepts of functional programming and learn how to use both functional and OOP features together on large or complex software projects.