Модель акторів — математична модель паралельних обчислень, побудована на основі поняття «актора» ( — актор, діючий суб'єкт), яке вважається універсальним примітивом паралельного виконання. Актор в даній моделі взаємодіє з іншими акторами шляхом надсилання та отримання повідомлень. Отримавши повідомлення актор може опрацювати його, створити нових акторів, надіслати власні повідомлення, змінити власний стан, в тому числі стратегію опрацювання наступних отриманих повідомлень чи завершити свою роботу.
Ця модель виступає як теоретична основа для ряду практичних реалізацій систем паралельних обчислень.
Модель акторів та мови програмування Мова програмування SmallTalk побудована виключно на взаємодії об'єктів за допомогою відсилання повідомлень один одному. При цьому код кожного об'єкта виконується паралельно в ізольованому від сусідів середовищі.
Ранні мови програмування з підтримкою акторів — Act 1, 2 та 3Генрі Ліберман. Розгляд Act 1. MIT AI, червень 1981Генрі Ліберман. Мислення про багато що одночасно без плутанини: Паралелізм в Act 1. MIT AI, червень 1981, ActtalkJean-Pierre Briot. Acttalk: A framework for object-oriented concurrent programming-design and experience 2nd France-Japan workshop. 1999., AniKen Kahn. A Computational Theory of Animation MIT EECS Doctoral Dissertation. August 1979., CantorWilliam Athas and Nanette Boden Cantor: An Actor Programming System for Scientific Computing in Proceedings of the NSF Workshop on Object-Based Concurrent Programming. 1988. Special Issue of SIGPLAN Notices., RosetteDarrell Woelk. Developing InfoSleuth Agents Using Rosette: An Actor Based Language Proceedings of the CIKM '95 Workshop on Intelligent Information Agents. 1995.
Пізніше створені мови, орієнтовані на модель акторів: Actor-Based Concurrent Language (ABCL), ActorScript, AmbientTalkDedecker J., Van Cutsem T., Mostinckx S., D'Hondt T., De Meuter W. Ambient-oriented Programming in AmbientTalk. In «Proceedings of the 20th European Conference on Object-Oriented Programming (ECOOP), Dave Thomas (Ed.), Lecture Notes in Computer Science Vol. 4067, pp. 230—254, Springer-Verlag.», 2006, Axum.
Мови загального призначення з моделлю акторів — E, Elixir, Erlang, Io, SALSACarlos Varela and Gul Agha. Programming Dynamically Reconfigurable Open Systems with SALSA. ACM SIGPLAN Notices. OOPSLA'2001 Intriguing Technology Track Proceedings, 2001, Scala.
Примітки