Keynote: Plain threads are the 'GOTO' of today's computing
When in 1968 Edsger Dijkstra published his famous paper 'GOTO considered harmful', he instigated a wide discussion in the community leading to the now commonplace knowledge that structured programming - while somewhat higher level than GOTO - is superior. It raises abstraction levels and makes code more approachable to humans.
In today's computing, where multi-core is the new modality and parallelism is clearly here to stay, we face a similar paradigm shift away from lower level abstractions related to threading and concurrency. We now understand that 'software is hard' and that multi-threaded software is almost too hard to write. Only few programmers are able to write code which manages more than a handful of threads.
In this talk, we look into higher level abstractions for C++ which could help to overcome the complexities programmers face when writing parallel code. We show that there is still hope we will be able to make massive parallelism available to most programmers, be it for code running on hand-held devices or on large supercomputers.
Speaker: Hartmut Kaiser