Description |
1 online resource : illustrations |
Series |
Community experience distilled |
|
Community experience distilled.
|
Contents |
Cover; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Introducing Elixir -- Thinking Functionally; Why functional?; Installing Elixir; GNU/Linux; Apple Mac OS X; Windows; Manual installation -- binary; Manual installation -- source; Hello, World!; Using the IO.puts/2 function; Using the inspect/2 function; Exercises; Summary; Chapter 2: Elixir Basics -- Foundational Steps toward Functional Programming; Everything is an expression; A short introduction to types; Numerical types; Memory usage |
|
Binary, hexadecimal, and octal numbersAtoms; Atom memory usage; Booleans; Strings; (Linked) Lists; A little more about strings; Ranges; Tuples; Tuples or lists; Binaries; Even more about Strings; Some more built-in types; Functions; Process IDs; Invariable variables and pattern matching; Using the underscore; More pattern matching; IEEE-754; Elixir structure; Elixir files; Exercises; Summary; Chapter 3: Modules and Functions -- Creating Functional Building Blocks; Modules; Anonymous functions; Pattern matching; Named functions; Private functions; Calling functions; When to |
|
Grabbing functionsWhen patterns aren't enough for matching; Functional algorithms for everyday problems; Iteration versus recursion; Performance considerations; Reverse; Sorting; Mix -- the ladle of Elixir; Structure of Elixir projects; mix.exs; .gitignore; config; README.md; lib; test; Compiling a project; Testing a project; Running interactively; Files; Mix and beyond; Building functional projects; Flatten; A small introduction to testing; More to do about modules; Testing with comments; Exercises; Summary; Chapter 4: Collections and Stream Processing; Keywords, maps, and dictionaries |
|
KeywordsMaps; Dictionaries; More pattern matching; Modifying dictionaries; Performance considerations; Structures and Hash dicts; Yet another dictionary type; Flow-based programming; Stream processing and Elixir; Processing with the Enum module; Processing with the Stream module; Greedy versus lazy; Stream examples; Graphs; A small introduction to graphs; Node ancestors; Exercises; Summary; Chapter 5: Control Flow -- Occasionally You Need to Branch; Branching with Elixir; if and unless; The new else if; Elixir case expressions; Examples using branching; FizzBuzz; Mergesort; Writing tests |
|
Implementing the sortException handling; Raising exceptions; Error, exit, and throw; Handling exceptions; The try-rescue blocks; The try-catch blocks; Using exceptions; Opening files; Exceptions recap; Determinism; References; Exercises; Summary; Chapter 6: Concurrent Programming -- Using Processes to Conquer Concurrency; Parallel computation and concurrent computation; Erlang processes and OS processes; Parallel map; Basics of Elixir process; Self; Sending messages; Receiving messages; Spawn; Process links; Spawning with links; Process monitor; Storing state inside processes; Naming processes |
Notes |
Includes index |
|
Online resource; title from cover page (Safari, viewed January 20, 2016) |
Subject |
Application software -- Development.
|
|
Functional programming languages.
|
|
COMPUTERS -- Programming -- Open Source.
|
|
COMPUTERS -- Software Development & Engineering -- General.
|
|
COMPUTERS -- Software Development & Engineering -- Tools.
|
|
Application software -- Development
|
|
Functional programming languages
|
Form |
Electronic book
|
ISBN |
178588347X |
|
9781785883477 |
|
1785881744 |
|
9781785881749 |
|