Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • 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
Spores: A Type-Based Foundation for Closures in the Age of Concurrency and Distribution
EPFL, Switzerland.
Typesafe, Switzerland.ORCID iD: 0000-0002-2659-5271
EPFL, Switzerland.
2014 (English)In: ECOOP 2014: Proceedings of the 28th European Conference on Object-Oriented Programming, 2014, Vol. 8586, 308-333 p.Conference paper, Published paper (Refereed)
Abstract [en]

Functional programming (FP) is regularly touted as the way forward for bringing parallel, concurrent, and distributed programming to the mainstream. The popularity of the rationale behind this viewpoint has even led to a number of object-oriented (OO) programming languages outside the Smalltalk tradition adopting functional features such as lambdas and thereby function closures. However, despite this established viewpoint of FP as an enabler, reliably distributing function closures over a network, or using them in concurrent environments nonetheless remains a challenge across FP and OO languages. This paper takes a step towards more principled distributed and concurrent programming by introducing a new closure-like abstraction and type system, called spores, that can guarantee closures to be serializable, thread-safe, or even have custom user-defined properties. Crucially, our system is based on the principle of encoding type information corresponding to captured variables in the type of a spore. We prove our type system sound, implement our approach for Scala, evaluate its practicality through a small empirical study, and show the power of these guarantees through a case analysis of real-world distributed and concurrent frameworks that this safe foundation for closures facilitates.

Place, publisher, year, edition, pages
2014. Vol. 8586, 308-333 p.
Series
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), ISSN 0302-9743
National Category
Computer Science
Identifiers
URN: urn:nbn:se:kth:diva-165677DOI: 10.1007/978-3-662-44202-9_13Scopus ID: 2-s2.0-84905370750ISBN: 9783662442012 (print)OAI: oai:DiVA.org:kth-165677DiVA: diva2:808740
Conference
2014 European Conference on Object-Oriented Programming, Uppsala, Sweden, July 28 - August 1, 2014
Note

QC 20150518

Available from: 2015-04-29 Created: 2015-04-29 Last updated: 2017-03-27Bibliographically approved

Open Access in DiVA

No full text

Other links

Publisher's full textScopus

Authority records BETA

Haller, Philipp

Search in DiVA

By author/editor
Haller, Philipp
Computer Science

Search outside of DiVA

GoogleGoogle Scholar

doi
isbn
urn-nbn

Altmetric score

doi
isbn
urn-nbn
Total: 28 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • 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