After more than 40 years by their invention, actors are nowadays in the mainstream, as a reference model for designing and developing concurrent and distributed systems. The actor model was introduced by Carl Hewitt and colleagues in 1973 [7], as a mathematical model of concurrent computation in which actors play the role of universal primitives of concurrent computation. In response to a message that it receives, an actor can: make local decisions, create more actors, send more messages, and determine how to respond to the next message received. Actors may modify their own private state, but can only affect each other through messages (avoiding the need for any locks). Since its conception, the model served both as a framework for a theoretical understanding of computation and as the theoretical basis for several practical implementations of concurrent systems [6]. In 80ies and 90ies the model has been a main reference to understand and define the extension of Object-Oriented Programming towards concurrency, e.g. Concurrent OOP [1, 2, 11, 4]. On the mainstream side, the panorama has been dominated by sequential programming until middle of 2000ies, when the “concurrency revolution” started to raise [9,5]. Since then, concurrent, asynchronous, distributed programming have gradually become part of everyday design and programming. If 80ies and 90ies were dominated by a vision in which mainstream pro- gramming and programming paradigms could abstract from concurrency and distribution, in recent years there has been an increasing awareness that this is not feasible (e.g., if you want to build reactive applications1), and – moreover – first-class concurrent abstractions, such actors and message passing, provide an effective modeling and designing power to deal with the complexity of modern applications and application domains [10, 3]. AGERE! workshop started in SPLASH in 2011 to investigate the definition of suitable levels of abstraction, programming languages, and platforms to support and promote a decentralized mindset in solving problems, designing systems, programming applications, including the teaching of computer programming [8]. That is, the question is how to think about problems and programs taking de- centralization of control and interaction as the most essential features. To this end, actors and agents were taken as key main references, recognised as two main broad families of concepts, abstractions and programming tools described in literature that explicitly promote such a decentralized thinking. The set of papers collected in this volume originated from the AGERE! work- shop series – last edition was in 2017 – and concern the application of actor-based approaches to mainstream application domains and the discussion of related is- sues.

Preface / Ricci, Alessandro; Haller, Philipp. - STAMPA. - (2018), pp. V-VII.

Preface

Ricci, Alessandro
;
2018

Abstract

After more than 40 years by their invention, actors are nowadays in the mainstream, as a reference model for designing and developing concurrent and distributed systems. The actor model was introduced by Carl Hewitt and colleagues in 1973 [7], as a mathematical model of concurrent computation in which actors play the role of universal primitives of concurrent computation. In response to a message that it receives, an actor can: make local decisions, create more actors, send more messages, and determine how to respond to the next message received. Actors may modify their own private state, but can only affect each other through messages (avoiding the need for any locks). Since its conception, the model served both as a framework for a theoretical understanding of computation and as the theoretical basis for several practical implementations of concurrent systems [6]. In 80ies and 90ies the model has been a main reference to understand and define the extension of Object-Oriented Programming towards concurrency, e.g. Concurrent OOP [1, 2, 11, 4]. On the mainstream side, the panorama has been dominated by sequential programming until middle of 2000ies, when the “concurrency revolution” started to raise [9,5]. Since then, concurrent, asynchronous, distributed programming have gradually become part of everyday design and programming. If 80ies and 90ies were dominated by a vision in which mainstream pro- gramming and programming paradigms could abstract from concurrency and distribution, in recent years there has been an increasing awareness that this is not feasible (e.g., if you want to build reactive applications1), and – moreover – first-class concurrent abstractions, such actors and message passing, provide an effective modeling and designing power to deal with the complexity of modern applications and application domains [10, 3]. AGERE! workshop started in SPLASH in 2011 to investigate the definition of suitable levels of abstraction, programming languages, and platforms to support and promote a decentralized mindset in solving problems, designing systems, programming applications, including the teaching of computer programming [8]. That is, the question is how to think about problems and programs taking de- centralization of control and interaction as the most essential features. To this end, actors and agents were taken as key main references, recognised as two main broad families of concepts, abstractions and programming tools described in literature that explicitly promote such a decentralized thinking. The set of papers collected in this volume originated from the AGERE! work- shop series – last edition was in 2017 – and concern the application of actor-based approaches to mainstream application domains and the discussion of related is- sues.
2018
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
V
VII
Preface / Ricci, Alessandro; Haller, Philipp. - STAMPA. - (2018), pp. V-VII.
Ricci, Alessandro; Haller, Philipp
File in questo prodotto:
Eventuali allegati, non sono esposti

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11585/679260
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 0
  • ???jsp.display-item.citation.isi??? ND
social impact