Learn Functional Programming with Elixir

New Foundations for a New World

by: Ulisses Almeida

Published 2018-02-27
Internal code cdc-elixir
Print status In Print
Pages 198
User level Beginner
Keywords functional programming, elixir, erlang, phoenix, scalable, reliable, higher order functions, polymorphism
Related titles

Programming Elixir 1.3
Programming Phoenix
Metaprogramming Elixir
Functional Web Development with Elixir, OTP, and Phoenix

ISBN 9781680502459
Other ISBN Channel epub: 9781680505764
Channel PDF: 9781680505771
Kindle: 9781680505740
Safari: 9781680505757
Kindle: 9781680505740
BISACs COM051000 COMPUTERS / Programming / General
COM051300 COMPUTERS / Programming / Algorithms
COM051300 COMPUTERS / Programming / Algorithms

Highlight

Elixir’s straightforward syntax and this guided tour give you a clean, simple path to learn modern functional programming techniques. No previous functional programming experience required! This book walks you through the right concepts at the right pace, as you explore immutable values and explicit data transformation, functions, modules, recursive functions, pattern matching, high-order functions, polymorphism, and failure handling, all while avoiding side effects. Don’t board the Elixir train with an imperative mindset! To get the most out of functional languages, you need to think functionally. This book will get you there.

Description

Functional programming offers useful techniques for building maintainable and scalable software that solves today’s difficult problems. The demand for software written in this way is increasing—you don’t want to miss out. In this book, you’ll not only learn Elixir and its features, you’ll also learn the mindset required to program functionally. Elixir’s clean syntax is excellent for exploring the critical skills of using functions and concurrency.

Start with the basic techniques of the functional way: working with immutable data, transforming data in discrete steps, and avoiding side effects. Next, take a deep look at values, expressions, functions, and modules. Then extend your programming with pattern matching and flow control with case, if, cond, and functions. Use recursive functions to create iterations. Work with data types such as lists, tuples, and maps. Improve code reusability and readability with Elixir’s most common high-order functions. Explore how to use lazy computation with streams, design your data, and take advantage of polymorphism with protocols. Combine functions and handle failures in a maintainable way using Elixir features and libraries.

Learn techniques that matter to make code that lives harmoniously with the language.

Contents and Extracts