Marr, Stefan, D'Hondt, Theo (2012) Identifying A Unifying Mechanism for the Implementation of Concurrency Abstractions on Multi-Language Virtual Machines. In: Objects, Models, Components, Patterns, 50th International Conference, TOOLS 2012. (doi:10.1007/978-3-642-30561-0_13) (KAR id:63839)
PDF
Author's Accepted Manuscript
Language: English |
|
Download this file (PDF/367kB) |
|
Request a format suitable for use with assistive technology e.g. a screenreader | |
Official URL: http://doi.org/10.1007/978-3-642-30561-0_13 |
Abstract
Supporting all known abstractions for concurrent and parallel programming in a virtual machines (VM) is a futile undertaking, but it is required to give programmers appropriate tools and performance. Instead of supporting all abstractions directly, VMs need a unifying mechanism similar to \textttINVOKEDYNAMIC for JVMs. Our survey of parallel and concurrent programming concepts identifies concurrency abstractions as the ones benefiting most from support in a VM. Currently, their semantics is often weakened, reducing their engineering benefits. They require a mechanism to define flexible language guarantees. Based on this survey, we define an ownership-based meta-object protocol as candidate for VM support. We demonstrate its expressiveness by implementing actor semantics, software transactional memory, agents, CSP, and active objects. While the performance of our prototype confirms the need for VM support, it also shows that the chosen mechanism is appropriate to express a wide range of concurrency abstractions in a unified way.
Item Type: | Conference or workshop item (Paper) |
---|---|
DOI/Identification number: | 10.1007/978-3-642-30561-0_13 |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
Depositing User: | Stefan Marr |
Date Deposited: | 26 Dec 2017 17:19 UTC |
Last Modified: | 16 Nov 2021 10:24 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/63839 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):