- Anybody can ask a question
- Anybody can answer
- The best answers are voted up and rise to the top
closed as too broad by MichaelT, Jim G., Blrfl, Kilian Foth, Giorgio May 12 '14 at 7:10
There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.
I presume you knows the concept. Well, I don't know very well yet.
The short answer is that I believe in popularity of this model to concurrency in short and medium term. I always loved lambda and closures and I see actor like closures specially handled to power concurrency. Thus multi core processors bring to us a new paradigm to programming, concurrency is obligatory to achieve high performance. Actor model seems the ease path to exploit modern hardware.
Sooner or later (i hope sooner) almost every mainstream language will support a better model to concurrency. IMHO Actor model so well implemented in Erlang should be the best candidate.
One obstacle to Actor model gain popularity is the little impedance with OOP, the dominant paradigm now. But the first step is being given, the main languages are implementing some functional features which will clean the path to Actor model.
I am reading a lot about this issue, I think it is very important to every programmer advance in his/her skills.
Now I understand better the paradigma. So I can say it's better to a programming languague allow allow the problem be handled by libraries or eventually has a feature to facilitate the adoption of one model. Tie a language with just one model doesn't see a good ideia.
"Popular" isn't a terribly important metric. "Useful" or "powerful" is.
The Actor model's been around for about 35 years now, at least in academia, and it has been adopted by more and more real-world languages as time passes. (OK, Erlang didn't adopt the Actor model, it reinvented the Actor model. Still.)
So, given that it's survived several decades in academia, and it's moving into the mainstream, I'd say it's going to be around for a good while.
Honestly I think it is the best way to do concurrency. The shared memory with locks model scares me, I can just see too many ways where it can go wrong. Actors with message passing seems to be a much cleaner way to do things.
Also look at STM which can be used in Clojure and Haskell and probably a few other languages.