Training: "Practical Erlang Programming"
Time: Monday 09:00 - 16:00
Practical Erlang Programming is a tutorial introducing Erlang to beginners. It covers the basics of sequential and concurrent programming. The tutorial contains hands on exercises and demos. The examples used in this tutorial form the basis of the upcoming Practical Erlang Programming book published by O’Reilly.
Basic Erlang This section deals with Erlang data types and pattern matching. Functions, modules, and BIFs are discussed. Before the exercises, the Erlang shell, useful shell commands, as well as Emacs and its Erlang mode are introduced.
Sequential ProgrammingThe Sequential Programming section comprehends conditional evaluations, guards, and scope of variables. It then introduces recursion, with a special emphasis on different recursive patterns, tail recursion, and space saving optimizations. Before the exercises, libraries and their manual pages, possible run-time errors, and the debugger are demonstrated.
Concurrent Programming This section describes the creation of processes and their life span. It looks at sending and receiving messages, selective reception, and passing data in the messages. It continues with the various uses of time outs and registering processes, and terminates by showing the generic process code structure. Before the exercises, a demonstration of the Process Manager tool is given.
Process Error Handling This section introduces the simple but powerful error handling mechanisms in processes. It looks at process links, exit signals, and their propagation semantics. How robust systems are built in Erlang are discussed, and an example from the Process Design Patterns section is re-implemented, making it robust.