Programming Elixir, 1.6 : functional, concurrent, pragmatic, fun / David Thomas.
- Format:
-
- Author/Creator:
-
- Series:
-
- Language:
- English
- Subjects (All):
-
- Physical Description:
- 1 online resource (1 volume) : illustrations.
- Edition:
- 1st edition
- Place of Publication:
- Raleigh, North Carolina : The Pragmatic Bookshelf, [2018]
- System Details:
- text file
- Summary:
- This book is the introduction to Elixir for experienced programmers, completely updated for Elixir 1.6 and beyond. Explore functional programming without the academic overtones (tell me about monads just one more time). Create concurrent applications, butget them right without all the locking and consistency headaches. Meet Elixir, a modern, 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 interestedfor the long haul. Maybe the time is right for the Next Big Thing. Maybe it's Elixir. Functional programming techniques help you manage the complexities of today's real-world, concurrent systems; maximize uptime; and manage security. Enter Elixir, with its modern, Ruby-like, extendable syntax, compile and runtime evaluation, 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. Part 3 looks at the more advanced features of the language, from DSLs and code generation to extending the syntax. This edition is fully updated with all the new features of Elixir 1.6, with a new chapter on structuring OTP applications, and new sections on the debugger, code formatter, Distillery, and protocols. What You Need: You'll need a computer, a little experience with another high-levellanguage, and a sense of adventure. No functional programmingexperience is needed.
- Contents:
-
- Take the red pill
- Part I: Conventional programming. Pattern matching ; Immutability ; Elixir basics ; Anonymous functions ; Modules and named functions ; Lists and recursion ; Maps, keyword lists, sets and structs ; An aside: What are types? ; Processing collections : enum and stream ; Strings and binaries ; Control flow ; Organizing a project ; Tooling
- Part II: Concurrent programming. Working with multiple processes ; Nodes: the key to distributing services ; OTP: servers ; OTP: supervisors ; A more complex example ; OTP: applications ; Tasks and agents
- Part III: More advanced Elixir. Macros and code evaluation ; Linking modules: behavio(u)rs and use ; Protocols: polymorphic functions ; More cool stuff
- Appendices: Exceptions: raise and try, catch and throw ; Type specifications and type checking.
- Notes:
-
- "Version: P1.0 (May 2018)."
- Includes bibliographical references.
- Description based on print version record.
- ISBN:
-
- 9781680506129
- 1680506129
- 9781680506143
- 1680506145
- 9781680506136
- 1680506137
- OCLC:
- 1043671351
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.