- English
- français
Scala actors: Unifying thread-based and event-based programming
There is an impedance mismatch between message-passing concurrency and virtual machines, such as the JVM. VMs usually map their threads to heavyweight OS processes. Without a lightweight process abstraction, users are often forced to write parts of concurrent applications in an event-driven style which obscures control flow, and increases the burden on the programmer. In this paper we show how thread-based and event-based programming can be unified under a single actor abstraction. Using advanced abstraction mechanisms of the Scala programming language, we implement our approach on unmodified JVMs. Our programming model integrates well with the threading model of the underlying VM.
Keywords: Concurrent Programming ; Actors ; Threads ; Events
Reference
- LAMP-ARTICLE-2008-003
- doi:10.1016/j.tcs.2008.09.019
- View record in Web of Science
- URL: http://www.sciencedirect.com/science/article/B6V1G-4TG9J07-4/2/6d025aa3d5748c89ad1e3dc1c1400bc3
Record created on 2008-10-01, modified on 2012-03-21