Kevin Hammond: Forming Parallel Erlang Programs using Advanced Refactoring

  • January 16, 2014 · 6:00 PM
  • Erlang Solutions office

This meetup is co-organized with the Budapest Erlang User Group.


Despite Moore's "law", uniprocessor clock speeds have now stalled. Rather than single processors running at ever higher clock speeds, it is common to find dual-, quad- or even hexa-core processors, even in consumer laptops and desktops. Future hardware will not be slightly parallel, however, as in today's multicore systems, but will be massively parallel, with manycore and perhaps even megacore systems becoming mainstream. This means that programmers need to start thinking parallel. To achieve this they must move away from traditional programming models where parallelism is a bolted-on afterthought. Rather, programmers must use languages where parallelism is deeply embedded into the programming model from the outset.

By providing a high level model of computation, without explicit ordering of computations, declarative languages in general, and functional languages in particular, offer many advantages for parallel programming. The ParaForming approach aims to radically improve the process of parallelising purely functional programs through a comprehensive set of high-level parallel patterns for Erlang, supported by advanced refactoring tools. By matching parallel design patterns with appropriate algorithmic skeletons using advanced software refactoring techniques and novel cost information, we will bridge the gap between fully automatic and fully explicit approaches to parallelisation, helping programmers "think parallel" in a systematic, guided way. This talk introduces the ParaForming approach, introduces the new Skel library for Erlang, gives some examples in Erlang and shows how effective parallel programs can be developed using advanced refactoring technology based on the standard Wrangler tool.

Speaker's bio:

Kevin Hammond is Professor in Computer Science, in the School of Computer Science, at the University of St. Andrews, St. Andrews, Scotland. He leads the Functional Programming research group. Kevin is also an Honorary Professor at Heriot-Watt University, Edinburgh, Scotland. The main interests are cost modeling, parallelism and real-time and embedded systems.

Kevin is the coordinator of the €4.2M EU FP7 ParaPhrase project, which aims to develop the ParaForming approach for parallelising Erlang and C++ programs. Erlang Solutions is a partner in this project.

Join or login to comment.

People in this
Meetup are also in:

Imagine having a community behind you

Get started Learn more

We just grab a coffee and speak French. Some people have been coming every week for months... it creates a kind of warmth to the group.

Rafaël, started French Conversation Group

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy