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. Conferences, Workshops, Symposiums, and Seminars
  4. Distributed Programming via Safe Closure Passing
 
conference paper not in proceedings

Distributed Programming via Safe Closure Passing

Haller, Philipp  
•
Miller, Heather  
2015
Programming Language Approaches to Communication and Concurrency Centric Systems

Programming systems incorporating aspects of functional programming, e.g., higher-order func- tions, are becoming increasingly popular for large-scale distributed programming. New frameworks such as Apache Spark leverage functional techniques to provide high-level, declarative APIs for in- memory data analytics, often outperforming traditional “big data” frameworks like Hadoop MapRe- duce. However, widely-used programming models remain rather ad-hoc; aspects such as implemen- tation trade-offs, static typing, and semantics are not yet well-understood. We present a new asyn- chronous programming model that has at its core several principles facilitating functional processing of distributed data. The emphasis of our model is on simplicity, performance, and expressiveness. The primary means of communication is by passing functions (closures) to distributed, immutable data. To ensure safe and efficient distribution of closures, our model leverages both syntactic and type-based restrictions. We report on a prototype implementation in Scala. Finally, we present pre- liminary experimental results evaluating the performance impact of a static, type-based optimization of serialization.

  • Files
  • Details
  • Metrics
Loading...
Thumbnail Image
Name

places-closure-passing.pdf

Type

Postprint

Version

http://purl.org/coar/version/c_ab4af688f83e57aa

Access type

openaccess

Size

317.24 KB

Format

Adobe PDF

Checksum (MD5)

6f3dc82d48b562801eda14eb260c12bb

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