Functional Programming in Scala, Second Edition
eBook - ePub

Functional Programming in Scala, Second Edition

  1. 488 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Functional Programming in Scala, Second Edition

About this book

This international bestseller has been revised with new exercises, annotations, and full coverage of Scala 3. In Functional Programming in Scala, Second Edition you will learn how to:

  • Recognize and write purely functional code
  • Work with errors without using exceptions
  • Work with state and concurrency
  • Interact with functional structures that define common behaviors
  • Write code that performs I/O without sacrificing functional programming


Functional Programming in Scala has helped over 30, 000 developers discover the power of functional programming. You'll soon see why reviewers have called it "mindblowing"! The book smooths the complexity curve of functional programming, making it simple to understand the basics and intuitive to progress to more advanced topics. Concrete examples and exercises show you FP in the real world and reveal how it can improve your everyday coding practices. This second edition comes packed with the latest standards of FP, as well as full code updates to Scala 3, and its new language features.Foreword by Daniel Spiewak. About the Technology Functional code is easy to test, reuse, and parallelize, and it's practically immune to whole categories of state-related bugs. With its strong functional features, familiar syntax, and seamless interoperability with Java, there's no better place to start learning functional programming than the flexible Scala language. About the Book In Functional Programming with Scala, Second Edition you'll learn functional programming from first principles. Hands-on exercises and examples make it easy to start thinking and coding functionally. This revised edition contains extensive exercise annotations to help you explore FP in depth, along with steps to build your own functional libraries in Scala. Once the functional lightbulb goes on, you'll never look at coding the same way again. What's Inside

  • Recognize and write purely functional code
  • Work with errors without using exceptions
  • Work with state and concurrency
  • Interact with functional structures that define common behaviors


About the Reader For Java or Scala programmers. No knowledge of functional programming required. About the Author Michael Pilquist is the lead maintainer of FS2, a functional streaming library, and contributes to the Typelevel ecosystem. Paul Chiusano and Rúnar Bjarnason are recognized experts in functional programming and authors of the first edition of Functional Programming with Scala. Table of Contents: PART 1 - INTRODUCTION TO FUNCTIONAL PROGRAMMING
1 What is functional programming?
2 Getting started with functional programming in Scala
3 Functional data structures
4 Handling errors without exceptions
5 Strictness and laziness
6 Purely functional state
PART 2 - FUNCTIONAL DESIGN AND COMBINATOR LIBRARIES
7 Purely functional parallelism
8 Property-based testing
9 Parser combinators
PART 3 - COMMON STRUCTURES IN FUNCTIONAL DESIGN
10 Monoids
11 Monads
12 Applicative and traversable functors
PART 4 - EFFECTS AND I/O
13 External effects and I/O
14 Local effects and mutable state
15 Stream processing and incremental I/O

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Functional Programming in Scala, Second Edition by Michael Pilquist,Paul Chiusano,Rúnar Bjarnasson in PDF and/or ePUB format, as well as other popular books in Informatik & Programmierung. We have over one million books available in our catalogue for you to explore.

Information

Publisher
Manning
Year
2023
eBook ISBN
9781638351962
Edition
0

Table of contents

  1. Praise for the First Edition
  2. Functional Programming in Scala, Second Edition
  3. Copyright
  4. contents
  5. front matter
  6. Part 1. Introduction to functional programming
  7. 1 What is functional programming?
  8. 2 Getting started with functional programming in Scala
  9. 3 Functional data structures
  10. 4 Handling errors without exceptions
  11. 5 Strictness and laziness
  12. 6 Purely functional state
  13. Part 2. Functional design and combinator libraries
  14. 7 Purely functional parallelism
  15. 8 Property-based testing
  16. 9 Parser combinators
  17. Part 3. Common structures in functional design
  18. 10 Monoids
  19. 11 Monads
  20. 12 Applicative and traversable functors
  21. Part 4. Effects and I/O
  22. 13 External effects and I/O
  23. 14 Local effects and mutable state
  24. 15 Stream processing and incremental I/O
  25. index