Abstract
We present a new abstract machine, called DCESH, which models the execution of higher-order programs running in distributed architectures. DCESH implements a native general remote higher-order function call across node boundaries. It is a modernised version of SECD enriched with specialised communication features required for implementing the remote procedure call mechanism. The key correctness result is that the termination behaviour of the remote procedure call is indistinguishable (bisimilar) to that of a local call. The correctness proofs and the requisite definitions for DCESH and other related abstract machines are formalised using Agda. We also formalise a generic transactional mechanism for transparently handling failure in DCESHs.
We use the DCESH as a target architecture for compiling a conventional call-by-value functional language ("Floskel") which can be annotated with node information. Conventional benchmarks show that the single-node performance of Floskel is comparable to that of OCaml, a semantically similar language, and that distribution overheads are not excessive.
We use the DCESH as a target architecture for compiling a conventional call-by-value functional language ("Floskel") which can be annotated with node information. Conventional benchmarks show that the single-node performance of Floskel is comparable to that of OCaml, a semantically similar language, and that distribution overheads are not excessive.
Original language | English |
---|---|
Title of host publication | IFL '14 Proceedings of the 26nd 2014 International Symposium on Implementation and Application of Functional Languages |
Publisher | Association for Computing Machinery |
Number of pages | 12 |
ISBN (Print) | 9781450332842 |
DOIs | |
Publication status | Published - 1 Oct 2014 |
Event | IFL 2014 : 26th Symposium on Implementation and Application of Functional Languages - Boston, Massachusetts, United States Duration: 1 Oct 2014 → 3 Oct 2014 |
Publication series
Name | ACM International Conference Proceeding Series |
---|---|
Publisher | ACM |
Conference
Conference | IFL 2014 : 26th Symposium on Implementation and Application of Functional Languages |
---|---|
Country/Territory | United States |
City | Boston, Massachusetts |
Period | 1/10/14 → 3/10/14 |