Gill, A., Sculthorpe, N. ORCID: 0000-0002-7244-0916, Dawson, J., Eskilson, A., Farmer, A., Grebe, M., Rosenbluth, J., Scott, R. and Stanton, J., 2015. The remote monad design pattern. ACM SIGPLAN Notices, 50 (12), pp. 59-70. ISSN 0362-1340
|
Text
PubSub5455_Sculthorpe.pdf - Post-print Download (416kB) | Preview |
Abstract
Remote Procedure Calls are expensive. This paper demonstrates how to reduce the cost of calling remote procedures from Haskell by using the remote monad design pattern, which amortizes the cost of remote calls. This gives the Haskell community access to remote capabilities that are not directly supported, at a surprisingly
inexpensive cost.
We explore the remote monad design pattern through six models of remote execution patterns, using a simulated Internet of Things toaster as a running example. We consider the expressiveness and optimizations enabled by each remote execution model, and assess the feasibility of our approach. We then present a full-scale case
study: a Haskell library that provides a Foreign Function Interface to the JavaScript Canvas API. Finally, we discuss existing instances of the remote monad design pattern found in Haskell libraries.
Item Type: | Journal article | ||||
---|---|---|---|---|---|
Description: | Special issue: "Haskell '15". | ||||
Publication Title: | ACM SIGPLAN Notices | ||||
Creators: | Gill, A., Sculthorpe, N., Dawson, J., Eskilson, A., Farmer, A., Grebe, M., Rosenbluth, J., Scott, R. and Stanton, J. | ||||
Publisher: | ACM (Association for Computing Machinery) | ||||
Date: | December 2015 | ||||
Volume: | 50 | ||||
Number: | 12 | ||||
ISSN: | 0362-1340 | ||||
Identifiers: |
|
||||
Divisions: | Schools > School of Science and Technology | ||||
Record created by: | Jill Tomkinson | ||||
Date Added: | 27 May 2016 15:41 | ||||
Last Modified: | 13 Oct 2017 13:16 | ||||
URI: | https://irep.ntu.ac.uk/id/eprint/27905 |
Actions (login required)
Edit View |
Views
Views per month over past year
Downloads
Downloads per month over past year