{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:47:56Z","timestamp":1772164076917,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":42,"publisher":"ACM","license":[{"start":{"date-parts":[[2015,8,30]],"date-time":"2015-08-30T00:00:00Z","timestamp":1440892800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000001","name":"National Science Foundation","doi-asserted-by":"publisher","award":["1117569 and 1350901"],"award-info":[{"award-number":["1117569 and 1350901"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2015,8,30]]},"DOI":"10.1145\/2804302.2804311","type":"proceedings-article","created":{"date-parts":[[2015,8,24]],"date-time":"2015-08-24T10:09:20Z","timestamp":1440410960000},"page":"59-70","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":9,"title":["The remote monad design pattern"],"prefix":"10.1145","author":[{"given":"Andy","family":"Gill","sequence":"first","affiliation":[{"name":"University of Kansas, USA"}]},{"given":"Neil","family":"Sculthorpe","sequence":"additional","affiliation":[{"name":"University of Kansas, USA \/ Swansea University, UK"}]},{"given":"Justin","family":"Dawson","sequence":"additional","affiliation":[{"name":"University of Kansas, USA"}]},{"given":"Aleksander","family":"Eskilson","sequence":"additional","affiliation":[{"name":"University of Kansas, USA"}]},{"given":"Andrew","family":"Farmer","sequence":"additional","affiliation":[{"name":"University of Kansas, USA"}]},{"given":"Mark","family":"Grebe","sequence":"additional","affiliation":[{"name":"University of Kansas, USA"}]},{"given":"Jeffrey","family":"Rosenbluth","sequence":"additional","affiliation":[{"name":"n.n., n.n."}]},{"given":"Ryan","family":"Scott","sequence":"additional","affiliation":[{"name":"University of Kansas, USA"}]},{"given":"James","family":"Stanton","sequence":"additional","affiliation":[{"name":"University of Kansas, USA"}]}],"member":"320","published-online":{"date-parts":[[2015,8,30]]},"reference":[{"key":"e_1_3_2_1_1_1","volume-title":"Hackage package threepenny-gui-0.6.0.2","author":"Apfelmus H.","year":"2015","unstructured":"H. Apfelmus . Hackage package threepenny-gui-0.6.0.2 , 2015 . H. Apfelmus. Hackage package threepenny-gui-0.6.0.2, 2015."},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF00264249"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/2080.357392"},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-04132-2_5"},{"key":"e_1_3_2_1_5_1","volume-title":"Hackage package mcpi-0.0.1.2","author":"Burke D.","year":"2014","unstructured":"D. Burke . Hackage package mcpi-0.0.1.2 , 2014 . D. Burke. Hackage package mcpi-0.0.1.2, 2014."},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796809007205"},{"key":"e_1_3_2_1_7_1","volume-title":"Hackage package accelerate-0.15.1.0","author":"Chakravarty M. M. T.","year":"2015","unstructured":"M. M. T. Chakravarty , R. Clifton-Everest , G. Keller , S. Lee , B. Lever , T. L. McDonell , R. Newtown , and S. Seefried . Hackage package accelerate-0.15.1.0 , 2015 . M. M. T. Chakravarty, R. Clifton-Everest, G. Keller, S. Lee, B. Lever, T. L. McDonell, R. Newtown, and S. Seefried. Hackage package accelerate-0.15.1.0, 2015."},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2103736.2103740"},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/871895.871897"},{"key":"e_1_3_2_1_10_1","volume-title":"Hackage package haste-compiler-0.4.4.4","author":"Ekblad A.","year":"2015","unstructured":"A. Ekblad . Hackage package haste-compiler-0.4.4.4 , 2015 . A. Ekblad. Hackage package haste-compiler-0.4.4.4, 2015."},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/2633357.2633367"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796802004574"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/2034675.2034690"},{"key":"e_1_3_2_1_14_1","volume-title":"Hackage package hArduino-0.9","author":"Erkok L.","year":"2014","unstructured":"L. Erkok . Hackage package hArduino-0.9 , 2014 . L. Erkok. Hackage package hArduino-0.9, 2014."},{"key":"e_1_3_2_1_15_1","volume-title":"Hackage package sbv-4.4","author":"Erkok L.","year":"2015","unstructured":"L. Erkok . Hackage package sbv-4.4 , 2015 . L. Erkok. Hackage package sbv-4.4, 2015."},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/351240.351257"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/581690.581693"},{"key":"e_1_3_2_1_18_1","volume-title":"Hackage package bus-pirate-0.6.2","author":"Gamari B.","year":"2015","unstructured":"B. Gamari . Hackage package bus-pirate-0.6.2 , 2015 . B. Gamari. Hackage package bus-pirate-0.6.2, 2015."},{"key":"e_1_3_2_1_19_1","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"Gamma E.","year":"1994","unstructured":"E. Gamma , R. Helm , R. Johnson , and J. Vlissides . Design Patterns: Elements of Reusable Object-Oriented Software . Addison Wesley , 1994 . E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, 1994."},{"key":"e_1_3_2_1_20_1","volume-title":"Hackage package sunroof-server-0.2.1","author":"Gill A.","year":"2014","unstructured":"A. Gill and J. Bracker . Hackage package sunroof-server-0.2.1 , 2014 . A. Gill and J. Bracker. Hackage package sunroof-server-0.2.1, 2014."},{"key":"e_1_3_2_1_21_1","volume-title":"Hackage package kansas-comet-0.3.1","author":"Gill A.","year":"2014","unstructured":"A. Gill and A. Farmer . Hackage package kansas-comet-0.3.1 , 2014 . A. Gill and A. Farmer. Hackage package kansas-comet-0.3.1, 2014."},{"key":"e_1_3_2_1_22_1","volume-title":"Hackage package transformers-0.4.3.0","author":"Gill A.","year":"2015","unstructured":"A. Gill and R. Paterson . Hackage package transformers-0.4.3.0 , 2015 . A. Gill and R. Paterson. Hackage package transformers-0.4.3.0, 2015."},{"key":"e_1_3_2_1_23_1","volume-title":"Hackage package mongoDB-2.0.5","author":"Hannan T.","year":"2015","unstructured":"T. Hannan . Hackage package mongoDB-2.0.5 , 2015 . T. Hannan. Hackage package mongoDB-2.0.5, 2015."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2628136.2628146"},{"key":"e_1_3_2_1_25_1","first-page":"142","volume-title":"International Conference on Software Reuse","author":"Hudak P.","unstructured":"P. Hudak . Modular domain specific languages and tools . In International Conference on Software Reuse , pages 134\u2013 142 . IEEE Press, 1998. P. Hudak. Modular domain specific languages and tools. In International Conference on Software Reuse, pages 134\u2013142. IEEE Press, 1998."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/331960.331977"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/199448.199528"},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.5555\/1048011.1048014"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2628136.2628144"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796807006326"},{"key":"e_1_3_2_1_31_1","volume-title":"RFC","author":"Microsystems S.","year":"1988","unstructured":"S. Microsystems . RPC: Remote procedure call protocol specification. Technical report , RFC 1050, Apr. 1988 . S. Microsystems. RPC: Remote procedure call protocol specification. Technical report, RFC 1050, Apr. 1988."},{"key":"e_1_3_2_1_32_1","volume-title":"RFC","author":"Microsystems S.","year":"1988","unstructured":"S. Microsystems . RPC : Remote procedure call protocol specification: Version 2. Technical report , RFC 1057, June 1988 . S. Microsystems. RPC: Remote procedure call protocol specification: Version 2. Technical report, RFC 1057, June 1988."},{"key":"e_1_3_2_1_33_1","unstructured":"J. Millikin. Hackage package ncurses-0.2.11 2014.  J. Millikin. Hackage package ncurses-0.2.11 2014."},{"key":"e_1_3_2_1_34_1","first-page":"23","volume-title":"Symposium on Logic in Computer Science","author":"Moggi E.","unstructured":"E. Moggi . Computational lambda-calculus and monads . In Symposium on Logic in Computer Science , pages 14\u2013 23 . IEEE Press, 1989. E. Moggi. Computational lambda-calculus and monads. In Symposium on Logic in Computer Science, pages 14\u201323. IEEE Press, 1989."},{"key":"e_1_3_2_1_35_1","volume-title":"Wishbone B4: WISHBONE System-on-Chip (SoC) Interconnection Architecture for Portable IP Cores","author":"OpenCores Organization","year":"2010","unstructured":"OpenCores Organization . Wishbone B4: WISHBONE System-on-Chip (SoC) Interconnection Architecture for Portable IP Cores , 2010 . URL http:\/\/opencores.org\/opencores,wishbone. OpenCores Organization. Wishbone B4: WISHBONE System-on-Chip (SoC) Interconnection Architecture for Portable IP Cores, 2010. URL http:\/\/opencores.org\/opencores,wishbone."},{"key":"e_1_3_2_1_36_1","volume-title":"Hackage package criterion-1.1.0.0","author":"O\u2019Sullivan B.","year":"2015","unstructured":"B. O\u2019Sullivan . Hackage package criterion-1.1.0.0 , 2015 . B. O\u2019Sullivan. Hackage package criterion-1.1.0.0, 2015."},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-34407-7_6"},{"key":"e_1_3_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/2364527.2364553"},{"key":"e_1_3_2_1_39_1","volume-title":"Hackage package yampa-canvas-0.2","author":"Sculthorpe N.","year":"2014","unstructured":"N. Sculthorpe . Hackage package yampa-canvas-0.2 , 2014 . N. Sculthorpe. Hackage package yampa-canvas-0.2, 2014."},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/2500365.2500602"},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/2500365.2500611"},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/91556.91592"}],"event":{"name":"ICFP'15: 20th ACM SIGPLAN International Conference on Functional Programming","location":"Vancouver BC Canada","acronym":"ICFP'15","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 2015 ACM SIGPLAN Symposium on Haskell"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2804302.2804311","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2804302.2804311","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T01:07:10Z","timestamp":1750208830000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2804302.2804311"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,8,30]]},"references-count":42,"alternative-id":["10.1145\/2804302.2804311","10.1145\/2804302"],"URL":"https:\/\/doi.org\/10.1145\/2804302.2804311","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/2887747.2804311","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2015,8,30]]},"assertion":[{"value":"2015-08-30","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}