This book introduces you the language and let you learn:
Learning the idioms, the good way and best practices to get real and production code.
Not only about processes, we also review some important modules and how to work with dates, files, ETS, DETS and much more.
We talk about processes and then nodes and how to work with them.
And most important, we talk about real code and how to release and hot-upgrade your projects.
Here you can check it out what you can find inside of the book, chapter by chapter and some extracts if you want jump into the reading right now.
Definitions of Erlang as language and platform, features, history, what was made with Erlang and the concurrency.
Syntaxis of the language, data types (atoms, integers and floats, variables, lists, tuples, records y maps), data conversion and printing to the screen.
Date and times, definition of monotonic time, how works the time and time measurement in Erlang and important changes in OTP 18.
Arithmetic and logic expressions, operators precedence, pattern matching, control flow structures (case and if), comprehension lists and functional blocks.
Code organization, functions scope, polymorphism and pattern matching, guards, closures, functional programming, recursivity and built-in functions.
Process anatomy, advantages and disadvantages of the Erlang process system, spawn, registering processes with names and process communication, link processes, monitoring processes, reloading code, nodes and remote process calling.
How to use ETS and DETS, create, remove and look up for information. Handling files individually (create, read, write and remove) and inside of a directory (active working directory, create directory, list and remove directories).
Communication network concepts, creation of clients and servers for TCP and UDP protocols and concurrent connections using TCP.
At last we'll give a tour to the Erlang ecosystem. We will learn to develop a project using rebar3 as main tool to create the project and create releases and hot-upgrades for our code.
* eBook includes PDF & ePUB versions
Whether you have questions or you would just like to say hello, contact us. Maybe some of your questions could be answered with the following frequently asked questions.
Actually, this is not very basic, this is going from the basics but it's bringing you to an advanced level. If you have any knowledge but you are not very confident developing with Erlang, you should review all of the contents proposed in this book previously to go into OTP.
If you know a bit about Erlang but you have any questions about:
Then I recommend you to get this book.
Actually not. The material is shown assuming you have no specific knowledge about programming. The book brings you all you need to understand from scratch and avoiding comparisons with other languages.
Even, we found it's better if you know nothing about programming because the way of developping with Erlang is very different from other popular programming languages.
There are great books about Erlang, but most of them are based on you know how to develop. Indeed, most of them are focused on processes and the specifics of Erlang and not on Erlang as a general-purpose language.
In addition, it was the first material that I used for the training that I gave to the people who joined the company when I adopted Erlang (2009) in the company and I improved it year after year.