uu.seUppsala University Publications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Forward to a Promising Future
Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology, Computing Science.
Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology, Computing Science.
Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology, Computing Science.ORCID iD: 0000-0003-4918-6582
Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology, Computing Science.
2018 (English)In: Conference proceedings COORDINATION 2018, 2018Conference paper, Published paper (Refereed)
Abstract [en]

In many actor-based programming models, asynchronous method calls communicate their results using futures, where the fulfilment occurs under-the-hood. Promises play a similar role to futures, except that they must be explicitly created and explicitly fulfilled; this makes promises more flexible than futures, though promises lack fulfilment guarantees: they can be fulfilled once, multiple times or not at all. Unfortunately, futures are too rigid to exploit many available concurrent and parallel patterns. For instance, many computations block on a future to get its result only to return that result immediately (to fulfil their own future). To make futures more flexible, we explore a construct, forward, that delegates the responsibility for fulfilling the current implicit future to another computation. Forward reduces synchronisation and gives futures promise-like capabilities. This paper presents a formalisation of the forward construct, defined in a high-level source language, and a compilation strategy from the high-level language to a low-level, promised-based target language. The translation is shown to preserve semantics. Based on this foundation, we describe the implementation of forward in the parallel, actor-based language Encore, which compiles to C.

Place, publisher, year, edition, pages
2018.
Keywords [en]
parallel, concurrency, futures, actors, tasks
National Category
Computer Systems
Identifiers
URN: urn:nbn:se:uu:diva-351352OAI: oai:DiVA.org:uu-351352DiVA, id: diva2:1209721
Conference
COORDINATION - 20th International Conference on Coordination Models and Languages, Madrid, June 18-21, 2018.
Available from: 2018-05-23 Created: 2018-05-23 Last updated: 2018-05-24Bibliographically approved

Open Access in DiVA

fulltext(485 kB)313 downloads
File information
File name FULLTEXT02.pdfFile size 485 kBChecksum SHA-512
59f3189bc2911ce615437f3837940b4753d1ebca4c3d869b855462d74ef15836ae06bb07cacf98dfa87db042c89d39690993a3f945ae19310754bb82a840d5b9
Type fulltextMimetype application/pdf

Authority records BETA

Fernandez-Reyes, KikoClarke, DaveCastegren, EliasVo, Huu-Phuc

Search in DiVA

By author/editor
Fernandez-Reyes, KikoClarke, DaveCastegren, EliasVo, Huu-Phuc
By organisation
Computing Science
Computer Systems

Search outside of DiVA

GoogleGoogle Scholar
Total: 314 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 475 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf