Strange Loop

September 26-28 2018

/

Stifel Theatre

/

St. Louis, MO

Register for 2018!

Erlang 101 - Your Intro to Actor and Multi-Core Programming

Note: this is a FULL DAY preconference workshop and costs $200.

THIS TUTORIAL HAS REQUIREMENTS AND INSTRUCTIONS LISTED BELOW

Erlang’s basic features are a perfect match for massively concurrent, distributed cloud environments. Being rooted in an actor model with no shared memory, the complexity of multi-core programming is hidden from the developers, allowing them to focus on the program. This tutorial will introduce Erlang and its actor model, explaining how it is positioning itself to win the multi-core challenge.

Basic & Sequential Erlang? This section deals with Erlang data types and pattern matching. Functions, and modules are discussed. It continues by introducing recursion, with a special emphasis on different recursive patterns, including tail recursion.

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. We conclude this section by introducing the simple but powerful error handling mechanisms in processes. It looks at process links, exit signals and their propagation semantics.

Multi-Core Programming This section guides the users through examples and scalability issues when writing programs you expect to double in speed when doubling your cores. It covers tools and programming techniques you can use to detect and avoid bottlenecks.

TUTORIAL REQUIREMENTS AND INSTRUCTIONS FOR ATTENDEES In order to get the most out of this tutorial, you must have a good grasp of other programming languages. Having dabbled with http://tryerlang.org is not necessary, but will help. This is a hands on tutorial.

Before arriving, download and install Erlang and get the Erlang mode for your favorite editor working. Erlang (source or binaries) can be downloaded at https://www.erlang-solutions.com/downloads/download-erlang-otp

Francesco Cesarini

Francesco Cesarini is the founder and technical director of Erlang Solutions Ltd. He has used Erlang on a daily basis since 1995, starting as an intern at Ericsson’s computer science laboratory, the birthplace of Erlang. He moved on to Ericsson’s Erlang training and consulting arm working on the first release of the OTP middleware, applying it to turnkey solutions and flagship telecom applications. In 1999, soon after Erlang was released as open source, he founded Erlang Solutions. With offices in five countries, they have become the world leaders in Erlang based support, consulting, training, certification, systems development and conferences. Francesco has worked in major Erlang based projects both within and outside Ericsson, and as Technical Director, has led the development and consulting teams at Erlang Solutions. He is also the co-author of Erlang Programming, a book published by O’Reilly and is currently co-authoring Designing For Scalability With Erlang/OTP. He lectures the graduate students at Oxford University.