Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Journal articles
  4. Scala actors: Unifying thread-based and event-based programming
 
research article

Scala actors: Unifying thread-based and event-based programming

Haller, Philipp  
•
Odersky, Martin  
2009
Theoretical Computer Science

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.

  • Files
  • Details
  • Metrics
Type
research article
DOI
10.1016/j.tcs.2008.09.019
Web of Science ID

WOS:000263228000006

Author(s)
Haller, Philipp  
Odersky, Martin  
Date Issued

2009

Published in
Theoretical Computer Science
Volume

410

Issue

2-3

Start page

202

End page

220

Subjects

Concurrent Programming

•

Actors

•

Threads

•

Events

Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
LAMP1  
Available on Infoscience
October 1, 2008
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/30022
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés