July 20–24, 2015
Portland, OR

Painlessly functional and concurrent: An introduction to Elixir

Marc Sugiyama (Erlang Solutions, Inc)
9:00am–12:30pm Tuesday, 07/21/2015
Scale D133
Average rating: ***..
(3.75, 4 ratings)

Prerequisite Knowledge

Software engineering background, particularly server side software.

Materials or downloads needed in advance

Install latest Erlang and Elixir to follow along with the examples.


If you think functional languages are a big pain in the rear but you still need the tools for building concurrent applications and multi-core programs, then Elixir is your thing! Combining the best features of Ruby and Erlang with brilliant ideas of its own, Elixir might just change the way you write software forever. This tutorial introduces you to Elixir, the best of both worlds: Ruby’s unrivaled syntactic beauty with the power of Erlang’s semantics.

Elixir is a dynamic language with flexible syntax based on Ruby and macro support. It is built on top of the Erlang VM, an unrivaled environment for massive scalability, concurrency, distribution, and fault tolerance. It comes with built-in support for metaprogramming, provides first-class support for pattern matching, polymorphism via protocols (similar to Clojure’s), aliases and associative data structures (called dicts or hashes in other programming languages).

In this tutorial, we cover:

  • Basic and Sequential Elixir
  • Concurrent Programming
Photo of Marc Sugiyama

Marc Sugiyama

Erlang Solutions, Inc

Marc Sugiyama is a senior architect at Erlang Solutions, Inc. A Bay Area native, he has more than 30 years of software development experience, and has worked on everything from testing frameworks in Tcl at Sybase and Cisco, to SMP relational database engines in C at Sybase, to an MMO engine in Twisted Python for Pixverse (a company he co-founded), to a large scale real-time chat system in Erlang for hi5 Networks. Prior to joining Erlang Solutions, Marc built a call handling service in Erlang for Ribbit/British Telecom, where he led a team of developers in Brazil, Sweden, the US, and the UK. A published author, he wrote his first magazine articles and books while still in high school. He has presented at Sybase user group meetings and the Colorado Software Summit. He holds a Bachelors of Science in Engineering and a Masters of Engineering from Harvey Mudd College, Claremont, California. Marc serves on the board of trustees of The College Preparatory School in Oakland, California.

Comments on this page are now closed.


Joseph Wong
07/30/2015 5:08pm PDT

Thanks for a great tutorial, Marc! Are the slides to this session available?