Author: Paul Chiusano
Brand: Manning Publications
Edition: 1st
Package Dimensions: 12x232x560
Number Of Pages: 320
Release Date: 14-09-2014
Details: Product Description
Summary
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, you’ll find concrete examples and exercises that open up the world of functional programming.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the Technology
Functional programming (FP) is a style of software development emphasizing functions that don’t depend on program state. Functional code is easier to test and reuse, simpler to parallelize, and less prone to bugs than other code. Scala is an emerging JVM language that offers strong support for FP. Its familiar syntax and transparent interoperability with Java make Scala a great place to start learning FP.
About the Book
Functional Programming in Scala is a serious tutorial for programmers looking to learn FP and apply it to their everyday work. The book guides readers from basic techniques to advanced topics in a logical, concise, and clear progression. In it, you’ll find concrete examples and exercises that open up the world of functional programming.
This book assumes no prior experience with functional programming. Some prior exposure to Scala or Java is helpful.
What’s Inside
Functional programming concepts
The whys and hows of FP
How to write multicore programs
Exercises and checks for understanding
About the Authors
Paul Chiusano and
Rúnar Bjarnason are recognized experts in functional programming with Scala and are core contributors to the Scalaz library.
Table of Contents
PART 1 INTRODUCTION TO FUNCTIONAL PROGRAMMING
What is functional programming?
Getting started with functional programming in Scala
Functional data structures
Handling errors without exceptions
Strictness and laziness
Purely functional state
PART 2 FUNCTIONAL DESIGN AND COMBINATOR LIBRARIES
Purely functional parallelism
Property-based testing
Parser combinators
PART 3 COMMON STRUCTURES IN FUNCTIONAL DESIGN
Monoids
Monads
Applicative and traversable functors
PART 4 EFFECTS AND I/O
External effects and I/O
Local effects and mutable state
Stream processing and incremental I/O
About the Author
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. As part of this effort he co-designed a functional programming curriculum and taught an internal course for coworkers interested in learning FP. Paul is also a regular blogger and speaker on functional programming and Scala.
Rúnar Bjarnason is a self-taught programmer with two decades of industry experience, focusing on functional programming since 2008. He blogs and occasionally speaks on functional programming and the Scala programming language.