Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Functional Programming in C++: How to improve your C++ programs using functional techniques

Buy
Summary

Functional Programming in C++ teaches developers the practical side of functional programming and the tools that C++ provides to develop software in the functional style. This in-depth guide is full of useful diagrams that help you understand FP concepts and begin to think functionally.

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology

Well-written code is easier to test and reuse, simpler to parallelize, and less error prone. Mastering the functional style of programming can help you tackle the demands of modern apps and will lead to simpler expression of complex program logic, graceful error handling, and elegant concurrency. C++ supports FP with templates, lambdas, and other core language features, along with many parts of the STL.

About the Book

Functional Programming in C++ helps you unleash the functional side of your brain, as you gain a powerful new perspective on C++ coding. You'll discover dozens of examples, diagrams, and illustrations that break down the functional concepts you can apply in C++, including lazy evaluation, function objects and invokables, algebraic data types, and more. As you read, you'll match FP techniques with practical scenarios where they offer the most benefit.

What's inside

  • Writing safer code with no performance penalties
  • Explicitly handling errors through the type system
  • Extending C++ with new control structures
  • Composing tasks with DSLs

About the Reader

Written for developers with two or more years of experience coding in C++.

About the Author

Ivan ?uki? is a core developer at KDE and has been coding in C++ since 1998. He teaches modern C++ and functional programming at the Faculty of Mathematics at the University of Belgrade.

Table of Contents

  1. Introduction to functional programming
  2. Getting started with functional programming
  3. Function objects
  4. Creating new functions from the old ones
  5. Purity: Avoiding mutable state
  6. Lazy evaluation
  7. Ranges
  8. Functional data structures
  9. Algebraic data types and pattern matching
  10. Monads
  11. Template metaprogramming
  12. Functional design for concurrent systems
  13. Testing and debugging
(HTML tags aren't allowed.)

Circuit Analysis for Complete Idiots
Circuit Analysis for Complete Idiots
In today’s world, there’s an electronic gadget for everything and inside these gadgets are circuits, little components wired together to perform some meaningful function. Have you wondered how a led display sign works or how a calculator works or toy cars work? How is it possible?? All because of electrical circuits. These tiny...
Introduction to Python for Science and Engineering (Series in Computational Physics)
Introduction to Python for Science and Engineering (Series in Computational Physics)

Series in Computational Physics
Steven A. Gottlieb and Rubin H. Landau, Series Editors

Introduction to Python for Science and Engineering

This guide offers a quick and incisive introduction to Python programming for anyone. The author has carefully developed a concise...

Mining the Social Web: Data Mining Facebook, Twitter, LinkedIn, Instagram, GitHub, and More
Mining the Social Web: Data Mining Facebook, Twitter, LinkedIn, Instagram, GitHub, and More

Mine the rich data tucked away in popular social websites such as Twitter, Facebook, LinkedIn, and Instagram. With the third edition of this popular guide, data scientists, analysts, and programmers will learn how to glean insights from social media—including who’s connecting with whom, what they’re...


Numerical Methods of Mathematics Implemented in Fortran (Forum for Interdisciplinary Mathematics)
Numerical Methods of Mathematics Implemented in Fortran (Forum for Interdisciplinary Mathematics)
This book systematically classifies the mathematical formalisms of computational models that are required for solving problems in mathematics, engineering and various other disciplines. It also provides numerical methods for solving these problems using suitable algorithms and for writing computer codes to find solutions. For discrete...
GIScience Teaching and Learning Perspectives (Advances in Geographic Information Science)
GIScience Teaching and Learning Perspectives (Advances in Geographic Information Science)
This volume uniquely links educational theories and the practice of GIScience in higher education contexts to guide classroom practice, present effective practical implementations from peers, and provide resources and strategies for effective teaching methods. The book offers a comprehensive exploration of GIScience education, including...
Smart Computational Strategies: Theoretical and Practical Aspects
Smart Computational Strategies: Theoretical and Practical Aspects
This book covers new developments and advances in the field of Computational Strategies for next-generation computing. The contributing authors share diverse perspectives on and extensive discussions of issues concerning the theory, applications, and future prospects. Addressing computing methodologies, hardware information systems...
©2020 LearnIT (support@pdfchm.net) - Privacy Policy