Co sądzisz o modelu aktorskim? [Zamknięte]

18

Model aktora używany przez Erlanga wydaje się być zupełnie innym sposobem na równoczesne programowanie. Co sądzisz o modelu aktorskim? Czy będzie to popularne rozwiązanie dla współbieżności?

Jonas
źródło
Ta strona wydaje się być zbyt stronnicza i niesprawiedliwa wobec pytań opartych wyłącznie na opiniach. Jest to wyraźnie oparte na opiniach, ale nie zostało zamknięte. Inne pytania oparte na opiniach zostaną zamknięte w ciągu kilku minut. Jak można usprawnić ten proces i stać się bardziej sprawiedliwym?
Jordania
Uważam ten temat za bardzo interesujący, ale tak, pytanie jest zbyt ogólne i oparte na opiniach.
Giorgio

Odpowiedzi:

7

Zakładam, że znasz tę koncepcję. Nie wiem jeszcze za dobrze.

Krótka odpowiedź brzmi: wierzę w popularność tego modelu do współbieżności w krótkim i średnim okresie. Zawsze uwielbiałem lambda i zamknięcia i widzę aktora jak zamknięcia specjalnie obsługiwane do zasilania współbieżności. W ten sposób procesory wielordzeniowe wprowadzają nowy paradygmat programowania, a współbieżność jest niezbędna do uzyskania wysokiej wydajności. Model aktora wydaje się łatwą ścieżką do wykorzystania nowoczesnego sprzętu.

Wcześniej czy później (mam nadzieję, że wcześniej) prawie każdy główny język będzie obsługiwał lepszy model współbieżności. Najlepszym kandydatem powinien być model aktora IMHO tak dobrze wdrożony w Erlangu.

Jedną z przeszkód dla popularności modelu aktorskiego jest niewielka impedancja z OOP, obecnie dominującym paradygmatem. Ale pierwszy krok jest podany, główne języki wdrażają pewne funkcje funkcjonalne, które oczyszczą ścieżkę do modelu aktora.

Dużo czytam na ten temat, myślę, że jest to bardzo ważne dla każdego programisty w jego umiejętnościach.

Późna edycja:

Teraz lepiej rozumiem paradygmat. Mogę więc powiedzieć, że lepiej jest, aby język programowania pozwolił, aby problem został rozwiązany przez biblioteki lub ewentualnie ma funkcję ułatwiającą przyjęcie jednego modelu. Wiąż język tylko jednym modelem, nie widząc dobrej idei.

Maniero
źródło
2
Czy istnieje impedancja między modelem Actor a OOP? Alan Kay oparty Smalltalk w niemałej części na PLANNER. Hewitt dużo zabrał z Smalltalk-72. Joe Armstrong nazywa teraz Erlanga „prawdopodobnie jedynym prawdziwym językiem OO”.
Frank Shearar,
7

„Popularność” nie jest niezwykle ważną miarą. „Przydatny” lub „potężny” jest.

Model aktora istnieje już od około 35 lat, przynajmniej w środowisku akademickim, a wraz z upływem czasu został przyjęty przez coraz więcej języków świata rzeczywistego. (OK, Erlang nie przyjął modelu aktora, wymyślił model aktora. Nadal.)

Biorąc pod uwagę, że przetrwał on kilkadziesiąt lat w środowisku akademickim i wkracza do głównego nurtu, powiedziałbym, że będzie już przez jakiś czas.

Frank Shearar
źródło
5

Szczerze mówiąc, myślę, że to najlepszy sposób na współbieżność. Model pamięci wspólnej z zamkami przeraża mnie, widzę po prostu zbyt wiele sposobów, w które może się nie udać. Aktorzy z przekazywaniem wiadomości wydają się znacznie czystszym sposobem na robienie rzeczy.

Zobacz także STM, który może być używany w Clojure i Haskell oraz prawdopodobnie w kilku innych językach.

Zachary K.
źródło