Actors in a new 'highly parallel' world - Correa, Fabio (International Conference on Software Engineering 2009, 2009)
The actor-model of computation was forged 25 years ago and, despite its natural fitness for concurrent programming, it never got traction on mainstream programming languages and as a widespread programming technique, it has been restricted mainly to academic experiments. The functional programming paradigm, available since the inception of the first high-level programming languages, despite the success of some of its languages, mostly on the academic environment, and its natural ability to avoid the inherent problems of concurrency, also never got traction on commercial development, being overshadowed by the proliferation of imperative languages. Recently, Moore's Law reached a limit and, as an alternative way of evolving processors, multi-core ones were developed, turning parallel systems into commodity. This paper presents the guidelines of research that is being conducted in response to the actual software engineering crisis, on how to effectively exploit this new highly parallel world of multi-core processors on computers and other devices. In search of an effective and efficient concurrent programming model, currently available actor-model implementations will be scrutinized in order to evaluate their strengths and weaknesses against the omnipresent shared-state, multi-threaded model of concurrent programming.