Actor Concurrency
As the number of cores in our servers increase, concurrent programming continues to rise in importance. Most concurrent programming today focuses on shared memory and concurrency control via locking. However, an alternative paradigm called *actor-based concurrency* has been rising in visibility with languages like Erlang and Scala. We’ll look at how actor-based concurrency differs from shared memory programming and how it can be utilized in languages like Erlang, Scala, and Java.
My Blog
- Java Actors with Kilim
- Running rings around Scala
- Running rings around Erlang
- Fibbing with Erlang
- Fibbing with Scala
Actor Model
- Wikipedia on Actor model
- Wikipedia on actor model history
- c2 wiki on Actor model
- CSP in Java (JCSP)
- Tony Hoare home page
- Using CSP page
- Ruben Vermeersch: Concurrency in Erlang & Scala: The Actor Model
Erlang
- Erlang Message Passing Concurrency, For the Win
- Concurrency Oriented Programming in Erlang
- Apache vs YAWS
- Andre Pang: Concurrency and Erlang [video]
- Erlang: The Movie (oh so unintentionally funny)
- Bruce Tate: Concurrent programming with Erlang
- Erlang is not the solution
- Python web + Erlang
- SD Times: Developers Moving to Erlang for Code Scaling
Scala
- Scala Actors Tutorial
- Why are Scala actors untyped?
- Scala actors 101
- Sujit Pal: Learning Scala for its Actors
- Jonas Bonér: Real-World Scala: Fault-tolerant Concurrent Asynchronous Components
Java
- Functional Java actors
- Threadless concurrency with actors
- Kilim project
- Kilim: Isolation-Typed Actors for Java
- Kilim: A Thread of One’s Own
- Sriram Srinivasan talk on Kilim (pdf)
- Debasish Ghosh on Kilim
- JetLang project
- Sujit Pal: Java Concurrency with Jetlang Actors
- Sujit Pal: Concurrency, Actors and Kilim
- Sujit Pal: More Java Actor Frameworks Compared
- Stephan Schmidt: Want Erlang concurrency but are stuck with Java: 4 Alternatives
- Actor Foundry project
- Actor’s Guild project
- Ted Jansen: Behind the Scenes: Actor Proxies
Other languages
- Dramatis – actors in Python and Ruby
- Candygram – Erlang concurrency in Python
- GParallelizer – Groovy

Hi! My name is Alex Miller and I live in St. Louis. I write code for a living and currently work for