Que pensez-vous du modèle d'acteur? [fermé]

18

Le modèle d'acteur utilisé par Erlang semble être une manière très différente de faire une programmation simultanée. Que pensez-vous du modèle d'acteur? Sera-ce une solution populaire pour la simultanéité?

Jonas
la source
Ce site semble être bien trop biaisé et injuste envers les seules questions d'opinion. Ceci est clairement basé sur l'opinion mais n'a pas été clôturé. D'autres questions basées sur l'opinion se ferment en quelques minutes. Comment ce processus peut-il être amélioré et devenir plus équitable?
jordan
Je trouve le sujet très intéressant mais, oui, la question est trop large et basée sur l'opinion.
Giorgio

Réponses:

7

Je suppose que vous connaissez le concept. Eh bien, je ne sais pas encore très bien.

La réponse courte est que je crois en la popularité de ce modèle à la concurrence à court et moyen terme. J'ai toujours aimé lambda et les fermetures et je vois des fermetures comme des acteurs spécialement gérées pour alimenter la concurrence. Ainsi, les processeurs multi-cœurs nous apportent un nouveau paradigme de programmation, la concurrence est obligatoire pour atteindre des performances élevées. Le modèle d'acteur semble la voie la plus facile pour exploiter le matériel moderne.

Tôt ou tard (j'espère plus tôt), presque toutes les langues dominantes prendront en charge un meilleur modèle de concurrence. Le modèle d'acteur IMHO si bien mis en œuvre à Erlang devrait être le meilleur candidat.

Un obstacle à la popularité du modèle Actor est la faible impédance avec la POO, le paradigme dominant actuellement. Mais la première étape est donnée, les principaux langages implémentent des fonctionnalités qui nettoieront le chemin vers le modèle Actor.

Je lis beaucoup sur cette question, je pense qu'il est très important pour chaque programmeur de progresser dans ses compétences.

Édition tardive:

Maintenant, je comprends mieux le paradigme. Je peux donc dire qu'il vaut mieux qu'une langue de programmation permette que le problème soit géré par les bibliothèques ou ait éventuellement une fonctionnalité pour faciliter l'adoption d'un modèle. Lier une langue avec un seul modèle ne voit pas une bonne idée.

Maniero
la source
2
Il y a une impédance entre le modèle Actor et la POO? Alan Kay a basé Smalltalk en grande partie sur PLANNER. Hewitt a pris beaucoup de Smalltalk-72. Joe Armstrong appelle maintenant Erlang "peut-être le seul vrai langage OO".
Frank Shearar
7

"Populaire" n'est pas une métrique terriblement importante. "Utile" ou "puissant" l'est.

Le modèle Acteur existe depuis environ 35 ans maintenant, au moins dans le monde universitaire, et il a été adopté par de plus en plus de langues du monde réel au fil du temps. (OK, Erlang n'a pas adopté le modèle Acteur, il a réinventé le modèle Acteur. Pourtant.)

Donc, étant donné qu'il a survécu à plusieurs décennies dans le monde universitaire et qu'il se déplace dans le courant dominant, je dirais que cela va durer un bon moment.

Frank Shearar
la source
5

Honnêtement, je pense que c'est la meilleure façon de faire de la concurrence. Le modèle de mémoire partagée avec serrures me fait peur, je peux juste voir trop de façons où ça peut mal tourner. Les acteurs qui transmettent des messages semblent être une façon beaucoup plus propre de faire les choses.

Regardez également STM qui peut être utilisé dans Clojure et Haskell et probablement dans quelques autres langues.

Zachary K
la source