Speaker

Joe Armstrong

Joe Armstrong

Inventor of Erlang

Modeling the World with Processes, Objects, Functions or Relations

When we solve a large problem we use “divide and conquer” — large problems are broken down into smaller problems, we solve the smaller problems and hopefully by solving the smaller problems when we put everything together the larger problem is solved.

We can break down the larger problem by identifying parallel processes, objects, functions or relations.

Concurrency Oriented Programming breaks down problems into sets of communicating processes. OO programming breaks down problems into objects, Functional programming into functions and relational programming into relations. Each of these methods is different and each has strengths and weaknesses.

In this talk I’ll survey the programming landscape and illustrate which class of problems can be best solved with distributed concurrent programs.

About Joe

Joe Armstrong is a co-inventor of Erlang. When at the Ericsson computer science lab in 1986, he was part of the team who designed and implemented the first version of Erlang. He has written several Erlang books including Programming Erlang Software for a Concurrent World. Joe held the first ever Erlang course and has taught Erlang to hundreds of programmers and held many lectures and keynotes describing the technology.

Joe has a PhD in computer science from the Royal Institute of Technology in Stockholm, Sweden and is an expert in the construction of fault tolerant systems. Joe was the chief software architect of the project which produced the Erlang OTP system. He has worked as an entrepreneur in one of the first Erlang startups (Bluetail) and has worked for 30 years in industry and research. He current works for Ericsson and is Adjunct Professor of Computer Science at the Royal Institue of Technology.