Scala Actors: Unifying thread-based and event-based programming
2009 (English)In: Theoretical Computer Science, ISSN 0304-3975, Vol. 410, no 2-3, 202-220 p.Article in journal (Refereed) Published
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.
Place, publisher, year, edition, pages
2009. Vol. 410, no 2-3, 202-220 p.
Actors, Concurrent programming, Events, Threads
IdentifiersURN: urn:nbn:se:kth:diva-165597DOI: 10.1016/j.tcs.2008.09.019ISI: 000263228000006ScopusID: 2-s2.0-58149350265OAI: oai:DiVA.org:kth-165597DiVA: diva2:808633
QC 201505052015-04-292015-04-292015-05-05Bibliographically approved