{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,5]],"date-time":"2026-02-05T10:48:55Z","timestamp":1770288535127,"version":"3.49.0"},"publisher-location":"New York, NY, USA","reference-count":52,"publisher":"ACM","license":[{"start":{"date-parts":[[2017,9,3]],"date-time":"2017-09-03T00:00:00Z","timestamp":1504396800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2017,9,3]]},"DOI":"10.1145\/3122975.3122977","type":"proceedings-article","created":{"date-parts":[[2017,8,30]],"date-time":"2017-08-30T12:52:29Z","timestamp":1504097549000},"page":"16-29","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":22,"title":["Structured asynchrony with algebraic effects"],"prefix":"10.1145","author":[{"given":"Daan","family":"Leijen","sequence":"first","affiliation":[{"name":"Microsoft Research, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2017,9,3]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.5555\/1784774.1784797"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"crossref","unstructured":"Steve Awodey. Category Theory. Oxford Logic Guides 46. Oxford university press. 2006.   Steve Awodey. Category Theory. Oxford Logic Guides 46. Oxford university press. 2006.","DOI":"10.1093\/acprof:oso\/9780198568612.001.0001"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jlamp.2014.02.001"},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-31057-7_12"},{"key":"e_1_3_2_1_5_1","unstructured":"Ethan Brown. Web Development with Node and Express. O\u2019Reilly. Jul. 2014.  Ethan Brown. Web Development with Node and Express. O\u2019Reilly. Jul. 2014."},{"key":"e_1_3_2_1_6_1","unstructured":"Olivier Danvy and Andrzej Filinski. A Functional Abstraction of Typed Contexts. DIKU University of Copenhagen. 1989.  Olivier Danvy and Andrzej Filinski. A Functional Abstraction of Typed Contexts. DIKU University of Copenhagen. 1989."},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/91556.91622"},{"key":"e_1_3_2_1_8_1","volume-title":"Proceedings of the Symposium on Trends in Functional Programming. TFP\u201917","author":"Dolan Stephen","year":"2017"},{"key":"e_1_3_2_1_9_1","volume-title":"OCaml Workshop.","author":"Dolan Stephen","year":"2015"},{"key":"e_1_3_2_1_10_1","unstructured":"Mark Feeley. \u201cSRFI 39: Parameter Objects.\u201d 2003. https:\/\/srfi.schemers.org\/srfi-39.  Mark Feeley. \u201cSRFI 39: Parameter Objects.\u201d 2003. https:\/\/srfi.schemers.org\/srfi-39."},{"key":"e_1_3_2_1_11_1","unstructured":"Matthew Flatt and PLT. Reference: Racket. PLT-TR-2010-1. PLT Design Inc. 2010. https:\/\/racket-lang.org\/tr1.  Matthew Flatt and PLT. Reference: Racket. PLT-TR-2010-1. PLT Design Inc. 2010. https:\/\/racket-lang.org\/tr1."},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/3110257"},{"key":"e_1_3_2_1_13_1","unstructured":"Ben R. Gaster and Mark P. Jones. A Polymorphic Type System for Extensible Records and Variants. NOTTCS-TR-96-3. University of Nottingham. 1996.  Ben R. Gaster and Mark P. Jones. A Polymorphic Type System for Extensible Records and Variants. NOTTCS-TR-96-3. University of Nottingham. 1996."},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2976022.2976033"},{"key":"e_1_3_2_1_15_1","volume-title":"Proceedings of the Second International Conference on Formal Structures for Computation and Deduction. FSCD\u201917","author":"Hillerstr\u00f6m Daniel","year":"2017"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1328438.1328475"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2500365.2500590"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2804302.2804319"},{"key":"e_1_3_2_1_19_1","unstructured":"Peter J. Landin. A Generalization of Jumps and Labels. UNIVAC systems programming research. 1965.  Peter J. Landin. A Generalization of Jumps and Labels. UNIVAC systems programming research. 1965."},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1010068630801"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/258948.258970"},{"key":"e_1_3_2_1_22_1","volume-title":"Proceedings of the 2005 Symposium on Trends in Functional Programming, 297\u2013312","author":"Leijen Daan","year":"2005"},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/1411204.1411245"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1480881.1480891"},{"key":"e_1_3_2_1_25_1","volume-title":"5th Workshop on Mathematically Structured Functional Programming.","author":"Leijen Daan","year":"2014"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/2682571.2797097"},{"key":"e_1_3_2_1_27_1","unstructured":"Daan Leijen. \u201cKoka Overview and Reference.\u201d 2016. http:\/\/bit.do\/kokabook.  Daan Leijen. \u201cKoka Overview and Reference.\u201d 2016. http:\/\/bit.do\/kokabook."},{"key":"e_1_3_2_1_28_1","unstructured":"Daan Leijen. Algebraic Effects for Functional Programming. MSR-TR-2016-29. Microsoft Research technical report. Aug. 2016. Extended version of .  Daan Leijen. Algebraic Effects for Functional Programming. MSR-TR-2016-29. Microsoft Research technical report. Aug. 2016. Extended version of ."},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3009837.3009872"},{"key":"e_1_3_2_1_30_1","unstructured":"Daan Leijen. Implementing Algebraic Effects in C. MSR-TR-2017-23. Microsoft Research technical report. Jun. 2017.  Daan Leijen. Implementing Algebraic Effects in C. MSR-TR-2017-23. Microsoft Research technical report. Jun. 2017."},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1640089.1640106"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/325694.325708"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2103786.2103798"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/3009837.3009897"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1016\/0890-5401(91)90052-4"},{"key":"e_1_3_2_1_36_1","unstructured":"Martin Odersky. \u201cImplicit Function Types.\u201d Dec. 2016. https:\/\/www.scala-lang.org\/blog\/2016\/12\/07\/implicit-function-types.html. Blog post.  Martin Odersky. \u201cImplicit Function Types.\u201d Dec. 2016. https:\/\/www.scala-lang.org\/blog\/2016\/12\/07\/implicit-function-types.html. Blog post."},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1023064908962"},{"key":"e_1_3_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-00590-9_7"},{"key":"e_1_3_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.2168\/LMCS-9(4:23)2013"},{"key":"e_1_3_2_1_40_1","volume-title":"Logical Methods in Computer Science 10 (3).","author":"Pretnar Matija","year":"2014"},{"key":"e_1_3_2_1_41_1","unstructured":"Axel Rauschmayer. Exploring ES6: Upgrade to the next Version of JavaScript. 2016. http:\/\/exploringjs.com\/es6.  Axel Rauschmayer. Exploring ES6: Upgrade to the next Version of JavaScript. 2016. http:\/\/exploringjs.com\/es6."},{"key":"e_1_3_2_1_42_1","volume-title":"Theoretical Aspects of Object-Oriented Programming, 67\u201395.","author":"R\u00e9my Didier","year":"1994"},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10990-007-9010-4"},{"key":"e_1_3_2_1_44_1","unstructured":"Martin Sulzmann. Designing Record Systems. YALEU\/DCS\/RR-1128. Yale University. Apr. 1997.  Martin Sulzmann. Designing Record Systems. YALEU\/DCS\/RR-1128. Yale University. Apr. 1997."},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/2034773.2034778"},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796808006758"},{"key":"e_1_3_2_1_47_1","unstructured":"The EcmaScript committee. \u201cES6: The EcmaScript 2015 Language Specification.\u201d 2015. http:\/\/www.ecma-international.org\/ecma-262\/6.0\/ECMA-262.pdf.  The EcmaScript committee. \u201cES6: The EcmaScript 2015 Language Specification.\u201d 2015. http:\/\/www.ecma-international.org\/ecma-262\/6.0\/ECMA-262.pdf."},{"key":"e_1_3_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1010068800499"},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-28228-2_11"},{"key":"e_1_3_2_1_50_1","unstructured":"Leo White. \u201cEffect Types for OCaml.\u201d Sep. 2016. https:\/\/github.com\/lpw25\/ocaml-typed-effects.  Leo White. \u201cEffect Types for OCaml.\u201d Sep. 2016. https:\/\/github.com\/lpw25\/ocaml-typed-effects."},{"key":"e_1_3_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-19797-5_15"},{"key":"e_1_3_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/2633357.2633358"}],"event":{"name":"ICFP '17: ACM SIGPLAN International Conference on Functional Programming","location":"Oxford UK","acronym":"ICFP '17","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 2nd ACM SIGPLAN International Workshop on Type-Driven Development"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3122975.3122977","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3122975.3122977","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T02:11:04Z","timestamp":1750212664000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3122975.3122977"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,9,3]]},"references-count":52,"alternative-id":["10.1145\/3122975.3122977","10.1145\/3122975"],"URL":"https:\/\/doi.org\/10.1145\/3122975.3122977","relation":{},"subject":[],"published":{"date-parts":[[2017,9,3]]},"assertion":[{"value":"2017-09-03","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}