Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Elixir Cookbook
  • Toc
  • feedback
Elixir Cookbook

Elixir Cookbook

By : Paulo Pereira
4.5 (2)
close
Elixir Cookbook

Elixir Cookbook

4.5 (2)
By: Paulo Pereira

Overview of this book

This book is intended for users with some knowledge of the Elixir language syntax and basic data types/structures. Although this is a cookbook and no sequential reading is required, the book’s structure will allow less advanced users who follow it to be gradually exposed to some of Elixir’s features and concepts specific to functional programming. To get the most out of this book, you need to be well versed with Erlang.
Table of Contents (11 chapters)
close
10
Index

Creating a supervisor


One of the main advantages of Elixir is fault tolerance, and one of the underlying philosophies is the famous let it crash philosophy. This means that by principle, no defensive programming is performed. You write the code that expresses your intent and handles the case you are expecting, and then if something goes wrong, you just let the process crash.

There are mechanisms in Elixir that allow the monitoring of processes and even give you the ability to relaunch a process (or a group of processes) if something goes wrong.

Probably in case of programming errors, this doesn't make sense, but what if the error was due to something that's external to your program? What if the program is logically sound, and everything is working as it's supposed to but, say, a resource, such as a network, fails? Your processes might crash because of that. What if there was a mechanism that would allow you to try again? Fortunately, there is: supervisors!

This is another OTP-defined behavior...

bookmark search playlist font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete