Functional programming (FP) is a programming style emphasizing functions that return consistent and predictable results regardless of a program's state. As a result, functional code is easier to test and reuse, simpler to parallelize, and less prone to bugs. Scala is an emerging JVM language that offers strong support for FP. Its familiar syntax and transparent interoperability with existing Java libraries make Scala a great place to start learning FP.
Functional Programming in Scala is a serious tutorial for programmers looking to learn FP and apply it to the everyday business of coding. The book guides readers from basic techniques to advanced topics in a logical, concise, and clear progression. In it, they'll find concrete examples and exercises that open up the world of functional programming.
RETAIL SELLING POINTS
Covers the practical benefits of Functional Programming
Offers concrete examples and exercises
Logically progresses from basic techniques to advance topics
No prior experience with FP or Scala is required. Perfect for programmers familiar with FP in other languages wishing to apply their knowledge in Scala.
ABOUT THE TECHNOLOGY
Functional programming (FP) is a programming style emphasizing functions that return consistent and predictable results regardless of a program's state. Scala is an emerging JVM language that offers strong support for FP.
AUTHOR BIO Paul Chiusano has been writing and shipping functional code in Scala since 2008 and is responsible for the introduction and growth of Scala usage at his company, Capital IQ. As part of this effort he co-designed a functional programming curriculum with Runar and taught an internal course for coworkers interested in learning FP. Paul is also a regular blogger and speaker on functional programming and Scala. Runar Bjarnason is a self-taught programmer with 12 years of industry experience, with a focus on functional programming since 2008. Runar is a prolific blogger and occasional speaker on functional programming and the Scala programming language. He is a principal contributor to the Scalaz library for Scala and the Functional Java library for Java.