Programming Elixir: Functional |> Concurrent |> Pragmatic |> Fun Front Cover

Programming Elixir: Functional |> Concurrent |> Pragmatic |> Fun

  • Length: 280 pages
  • Edition: 1
  • Publisher:
  • Publication Date: 2014-10-19
  • ISBN-10: 1937785580
  • ISBN-13: 9781937785581
  • Sales Rank: #1154805 (See Top 100 Books)
Description

You want to explore functional programming, but are put off by the academic feel (tell me about monads just one more time). You know you need concurrent applications, but also know these are almost impossible to get right. Meet Elixir, a functional, concurrent language built on the rock-solid Erlang VM. Elixir’s pragmatic syntax and built-in support for metaprogramming will make you productive and keep you interested for the long haul. This book is the introduction to Elixir for experienced programmers.

Maybe you need something that’s closer to Ruby, but with a battle-proven environment that’s unrivaled for massive scalability, concurrency, distribution, and fault tolerance. Maybe the time is right for the Next Big Thing. Maybe it’s Elixir.

And don’t forget to download this handy “cheat sheet”:https://media.pragprog.com/titles/​elixir/ElixirCheat.pdf for Elixir syntax.

h5. Print books will be available after Elixir 1.0 has been finalized.

As a developer, you’ve probably heard that functional programming techniques help manage the complexities of today’s real-world, concurrent systems. You’re also investigating designs that help you maximize uptime and manage security.

This book is your guide to Elixir, a modern, functional, and concurrent programming language. Because Elixir runs on the Erlang VM, and uses the underlying Erlang/OTP architecture, it benefits from almost 20 years of research into high performance, highly parallel, and seriously robust applications. Elixir brings a lot that’s new: a modern, Ruby-like, extendable syntax, compile and runtime evaluation, a hygienic macro system, and more.

But, just as importantly, Elixir brings a sense of enjoyment to parallel, functional programming. Your applications become fun to work with, and the language encourages you to experiment.

Part 1 covers the basics of writing sequential Elixir programs. We’ll look at the language, the tools, and the conventions.

Part 2 uses these skills to start writing concurrent code–applications that use all the cores on your machine, or all the machines on your network! And we do it both with and without OTP.

And Part 3 looks at the more advanced features of the language, from DSLs and code generation to extending the syntax.

By the end of this book, you’ll understand Elixir, and know how to apply it to solve your complex, modern problems.

Table of Contents

Chapter 1. Take the Red Pill

Part I. Conventional Programming
Chapter 2. Pattern Matching
Chapter 3. Immutability
Chapter 4. Elixir Basics
Chapter 5. Anonymous Functions
Chapter 6. Modules and Named Functions
Chapter 7. Lists and Recursion
Chapter 8. Dictionaries: Maps, HashDicts, Keywords, Sets, and Structs
Chapter 9. An Aside—What Are Types?
Chapter 10. Processing Collections—Enum and Stream
Chapter 11. Strings and Binaries
Chapter 12. Control Flow
Chapter 13. Organizing a Project

Part II. Concurrent Programming
Chapter 14. Working with Multiple Processes
Chapter 15. Nodes—The Key to Distributing Services
Chapter 16. OTP: Servers
Chapter 17. OTP: Supervisors
Chapter 18. OTP: Applications
Chapter 19. Tasks and Agents

Part III. More-Advanced Elixir
Chapter 20. Macros and Code Evaluation
Chapter 21. Linking Modules: Behavio(u)rs and Use
Chapter 22. Protocols—Polymorphic Functions
Chapter 23. More Cool Stuff

To access the link, solve the captcha.