Purely Functional Distributed Systems Programming

Haeri, Seyed Hossein;Van Roy, Peter
(2020) , 7 pages

Files

netys2020-tr.pdf
  • Open Access
  • Adobe PDF
  • 341.07 KB

Details

Authors
Abstract
Code written for distributed systems requires to handle communication between nodes in the system. Handling that communication involves mutating the state of its medium -- or, at least that is the common impression. Hence, distributed systems programming is construed as effectful (aka impure) ipso facto. This work refutes that construal. We show that the above effectfulness (aka impurity) is accidental complexity. Our λ(refut) is a pure functional model for distributed systems programming. λ(refut) ships remote futures: a built-in facility for node communication. To use remote futures, the λ(refut) programmer does not mutate variables. Hence, purity of the programming. The payback is that λ(refut)’s term rewriting is impure. But, so is also the semantics of the famous purely functional languages.
Affiliations

Citations

Haeri, S. H., & Van Roy, P. (2020). Purely Functional Distributed Systems Programming. https://hdl.handle.net/2078.5/120859