March 15, 2012 · 7:00 PM
This location is shown only to members
When reading about OTP behaviours, you should see them as a formalization of process design patterns. Erlang doesn't have strict design patterns, but when looking at concurrency, an extremely powerful reusable solution which hides and abstracts all of the tricky aspects and borderline conditions of concurrency oriented programming from the programmer has been implemented. It ensures that the wheel is not reinvented in-between projects, maximizing re-usability and maintainability through a solid, well tested generic and reusable code base. These behaviors are, in design pattern speech, implementation libraries of the concurrency models.
In his talk, Francesco will be using the running example of the frequency server, featured in the Erlang Programming book. We will break up the pure Erlang code into generic and specific Erlang modules, demonstrating the benefits these libraries bring us when developing complex, fault tolerant, massively concurrent distributed soft real-time systems. We will then take the code, and implement it using the gen_server module. In doing so, we will demonstrate the pitfalls and borderline cases which are hidden from the programmer and taken care of behind the scenes.
The talk will take about 1.5 hours, longer if there is lots (of welcome) delegate interaction.
Francesco Cesarini has used Erlang on a daily basis since 1995, having worked in various turnkey projects at Ericsson, including the OTP R1 release. He is the founder of Erlang Solutions and co-author of O'Reilly's Erlang Programming. While he works as Technical Director at Erlang Solutions, leading the development teams and setting the technical direction for the company, he still finds the time to teach graduates and undergraduates alike at Oxford University in the UK and the IT Univeristy of Gotheburg in Sweden.