Актерная модель: история развития и первые реализации.
Actor model middle history
Актерная модель: история развития (1973-наст.вр.). Параллельные вычисления, реализация, приложения, теория доказательств. Автоматическая сборка мусора.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
В информатике модель акторов, впервые опубликованная в 1973 году, является математической моделью параллельных вычислений. В данной статье рассматривается средний период истории модели акторов, в котором основными темами стали первые реализации, первые применения, а также разработка первой теории доказательств и денотационной модели. Она является продолжением статьи об ранней истории модели акторов, в которой освещалось начальное развитие концепций. Статья "Поздняя история модели акторов" посвящена событиям, последовавшим за теми, что описаны в этой статье.
In computer science, the Actor model, first published in 1973 , is a mathematical model of concurrent computation. This article reports on the middle history of the Actor model in which major themes were initial implementations, initial applications, and development of the first proof theory and denotational model. It is the follow on article to Actor model early history which reports on the early history of the Actor model which concerned the basic development of the concepts. The article Actor model later history reports on developments after the ones reported in this article.
Сбор мусора
Сбор мусора (автоматическое освобождение неиспользуемой памяти) был важной темой в развитии модели Actor. В своей докторской диссертации Питер Бишоп разработал алгоритм сбора мусора в распределенных системах. Каждая система вела списки ссылок указателей на другие системы и от них. Циклические структуры собирались путем инкрементной миграции акторов (объектов) на другие системы, имеющие их адреса, до тех пор, пока циклическая структура полностью не окажется в пределах одной системы, где сборщик мусора мог освободить память. Генри Бейкер разработал алгоритм сбора мусора в реальном времени в своей докторской диссертации. Основная идея заключалась в чередовании операций сбора и выделения памяти, чтобы избежать длительных пауз во время сбора мусора. См. инкрементный сбор мусора. Генри Либерман и Карл Хьюитт [1983] разработали сбор мусора в реальном времени, основанный на времени жизни акторов (объектов). Основная идея заключалась в распределении акторов (объектов) по поколениям, чтобы во время сбора мусора приходилось проверять только последние поколения. См. сбор мусора по поколениям.
Garbage collection (the automatic reclamation of unused storage) was an important theme in the development of the Actor model. In his doctoral dissertation, Peter Bishop developed an algorithm for garbage collection in distributed systems. Each system kept lists of links of pointers to and from other systems. Cyclic structures were collected by incrementally migrating Actors (objects) onto other systems which had their addresses until a cyclic structure was entirely contained in a single system where the garbage collector could recover the storage. Henry Baker developed an algorithm for real time garbage collection in his doctoral dissertation. The fundamental idea was to interleave collection activity with construction activity so that there would not have to be long pauses while collection takes place. See incremental garbage collection. Henry Lieberman and Carl Hewitt [1983] developed a real time garbage collection based on the lifetimes of Actors (Objects). The fundamental idea was to allocate Actors (objects) in generations so that only the latest generations would have to be examined during a garbage collection. See generational garbage collection.
Языки программирования актеров
Генри Либерман, Дэн Терьо и другие разработали Act1, язык программирования Actor. Впоследствии, для своей магистерской диссертации, Дэн Терьо разработал Act2. Эти ранние языки, демонстрирующие концепцию, были довольно неэффективными и не подходили для практического применения. В своей докторской диссертации Кен Кан разработал Ani, который он использовал для создания нескольких анимаций. Билл Корнфельд разработал язык программирования Ether для концепции Scientific Community Metaphor в своей докторской диссертации. Уильям Атас и Нанет Боден [1988] разработали Cantor – язык программирования Actor для научных вычислений. Жан-Пьер Бриот [1988, 1999] разработал средства для расширения Smalltalk 80 с целью поддержки вычислений Actor. Кристин Томлинсон, Марк Шеевел, Грег Лавендер, Грег Мередит и др. [1995] в MCC разработали язык программирования Actor для агентов InfoSleuth в Rosette. Карл Хьюитт, Беппе Аттарди и Генри Либерман [1979] предложили механизмы делегирования в системах передачи сообщений. Это послужило причиной так называемой дискуссии об аномалии наследования в объектно-ориентированных, конкурентных языках программирования [Satoshi Matsuoka и Aki Yonezawa 1993, Giuseppe Milicia и Vladimiro Sassone 2004].
Henry Lieberman, Dan Theriault, et al. developed Act1, an Actor programming language. Subsequently for his masters thesis, Dan Theriault developed Act2. These early proof of concept languages were rather inefficient and not suitable for applications. In his doctoral dissertation, Ken Kahn developed Ani, which he used to develop several animations. Bill Kornfeld developed the Ether programming language for the Scientific Community Metaphor in his doctoral dissertation. William Athas and Nanette Boden [1988] developed Cantor which is an Actor programming language for scientific computing. Jean Pierre Briot [1988, 1999] developed means to extend Smalltalk 80 for Actor computations. Christine Tomlinson, Mark Scheevel, Greg Lavender, Greg Meredith, et al. [1995] at MCC developed an Actor programming language for InfoSleuth agents in Rosette. Carl Hewitt, Beppe Attardi, and Henry Lieberman [1979] developed proposals for delegation in message passing. This gave rise to the so called inheritance anomaly controversy in object oriented concurrent programming languages [Satoshi Matsuoka and Aki Yonezawa 1993, Giuseppe Milicia and Vladimiro Sassone 2004].
Денотационная модель систем Actor
В своей докторской диссертации Уилл Клингер разработал первую денотационную модель систем акторов. См. денотационную семантику модели акторов.
In his doctoral dissertation, Will Clinger developed the first denotational model of Actor systems. See denotational semantics of the Actor model.