Was denkst du über das Actor Model? [geschlossen]

18

Das von Erlang verwendete Actor Model scheint eine ganz andere Art der gleichzeitigen Programmierung zu sein. Was denkst du über das Actor Model? Wird es eine beliebte Lösung für Parallelität sein?

Jonas
quelle
Diese Seite scheint viel zu voreingenommen und unfair zu sein, wenn es nur um meinungsbasierte Fragen geht. Dies ist eindeutig meinungsbasiert, wurde jedoch nicht abgeschlossen. Andere meinungsbasierte Fragen werden innerhalb von Minuten geschlossen. Wie kann dieser Prozess verbessert und fairer werden?
Jordanien
Ich finde das Thema sehr interessant, aber die Frage ist zu weit gefasst und meinungsbasiert.
Giorgio

Antworten:

7

Ich nehme an, Sie kennen das Konzept. Nun, ich weiß es noch nicht genau.

Die kurze Antwort ist, dass ich kurz- und mittelfristig an die Beliebtheit dieses Modells glaube. Ich habe Lambda und Closures immer geliebt und sehe Schauspieler-ähnliche Closures, die speziell dafür entwickelt wurden, Parallelität zu betreiben. Multi-Core-Prozessoren eröffnen uns ein neues Paradigma in der Programmierung. Parallelität ist ein Muss, um eine hohe Leistung zu erzielen. Das Schauspielermodell scheint der einfache Weg zu sein, moderne Hardware auszunutzen.

Früher oder später (ich hoffe früher) wird fast jede Mainstream-Sprache ein besseres Modell zur Parallelität unterstützen. IMHO Actor-Modell so gut umgesetzt in Erlang sollte der beste Kandidat sein.

Ein Hindernis für die Popularität des Actor-Modells ist die geringe Impedanz bei OOP, dem derzeit vorherrschenden Paradigma. Aber der erste Schritt ist getan, die Hauptsprachen implementieren einige Funktionsmerkmale, die den Weg zum Actor-Modell bereinigen.

Ich lese viel über dieses Thema und finde es sehr wichtig, dass jeder Programmierer seine Fähigkeiten weiterentwickelt.

Späte Bearbeitung:

Jetzt verstehe ich das Paradigma besser. Ich kann also sagen, dass es besser ist, in einer Programmiersprache zuzulassen, dass das Problem von Bibliotheken behandelt wird, oder dass es schließlich eine Funktion gibt, die die Übernahme eines Modells erleichtert. Binden Sie eine Sprache mit nur einem Modell, das keine gute Idee sieht.

Maniero
quelle
2
Gibt es eine Impedanz zwischen dem Actor-Modell und dem OOP? Alan Kay basierte Smalltalk nicht zuletzt auf PLANNER. Hewitt hat viel von Smalltalk-72 mitgenommen. Joe Armstrong nennt Erlang nun "möglicherweise die einzig wahre OO-Sprache".
Frank Shearar
7

"Beliebt" ist keine schrecklich wichtige Metrik. "Nützlich" oder "mächtig" ist.

Das Actor-Modell gibt es seit ungefähr 35 Jahren, zumindest im akademischen Bereich, und es wurde im Laufe der Zeit von immer mehr realen Sprachen übernommen. (OK, Erlang nicht übernehmen die Schauspieler - Modell, es neu erfunden das Schauspieler - Modell. Foto .)

Angesichts der Tatsache, dass es im akademischen Bereich mehrere Jahrzehnte überlebt hat und in den Mainstream übergeht, würde ich sagen, dass es noch eine Weile dauern wird.

Frank Shearar
quelle
5

Ehrlich gesagt denke ich, dass es der beste Weg ist, Parallelität zu betreiben. Das Shared-Memory-Modell mit Schlössern macht mir Angst, ich kann einfach zu viele Wege erkennen, wo es schief gehen kann. Schauspieler mit Nachrichtenübermittlung scheinen eine viel sauberere Methode zu sein, um Dinge zu tun.

Schauen Sie sich auch STM an, das in Clojure und Haskell und wahrscheinlich auch in einigen anderen Sprachen verwendet werden kann.

Zachary K
quelle