├── .github └── workflows │ └── checklinks.yml ├── .lycheeignore └── README.md /.github/workflows/checklinks.yml: -------------------------------------------------------------------------------- 1 | name: Links (Fail Fast) 2 | 3 | on: 4 | push: 5 | pull_request: 6 | 7 | jobs: 8 | linkChecker: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - uses: actions/checkout@v3 12 | 13 | - name: Restore lychee cache 14 | uses: actions/cache@v3 15 | with: 16 | path: .lycheecache 17 | key: cache-lychee-${{ github.sha }} 18 | restore-keys: cache-lychee- 19 | 20 | - name: Run lychee 21 | uses: lycheeverse/lychee-action@v1.8.0 22 | with: 23 | fail: true 24 | args: "--cache --max-redirects 10 --max-cache-age 1d ." 25 | -------------------------------------------------------------------------------- /.lycheeignore: -------------------------------------------------------------------------------- 1 | https://dl.acm.org/doi/pdf/.* 2 | https://www.cs.drexel.edu/.* 3 | https://www.cs.uoregon.edu/research/summerschool/.* 4 | https://www.macs.hw.ac.uk/splv/.* 5 | https://doi.org/10.1007/.* 6 | https://doi.org/10.1017/.* 7 | https://doi.org/10.1145/.* 8 | https://dblp.uni-trier.de/rec/.* 9 | https://ecommons.cornell.edu/handle/.* 10 | https://fstar-lang.org/ 11 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Effects bibliography 2 | 3 | A collection of research papers and other resources related to the 4 | theory and practice of computational effects. 5 | 6 | ## Instructions 7 | 8 | * [Pull requests](https://github.com/yallop/effects-bibliography/pulls) welcome! 9 | * You can [**edit the file directly**](https://github.com/yallop/effects-bibliography/edit/master/README.md) also. 10 | * Keep the formatting consistent with the rest. 11 | * End a line with a double space to force a line break. 12 | 13 | ## Software 14 | 15 | See also the [Effects and handlers Rosetta 16 | stone](https://github.com/effect-handlers/effects-rosetta-stone), a 17 | comparison of how computational effects and handlers are implemented 18 | in various programming languages. 19 | 20 | * **Coop**: A prototype programming language for programming with runners 21 | by Andrej Bauer and Danel Ahman 22 | ([GitHub](https://github.com/andrejbauer/coop)) 23 | 24 | * **Desk**: A statically-typed functional language with an effect system based on set-operation 25 | by Ryo Hirayama from Hihaheho Studio 26 | ([GitHub](https://github.com/Hihaheho/Desk)) 27 | ([an effects tutorial article](https://github.com/Hihaheho/Desk/blob/main/docs/blog/0002-algebraic-effects.md)) 28 | 29 | * **Eff**: programming language with algebraic effects and handlers 30 | by Andrej Bauer and Matija Pretnar 31 | ([www](http://www.eff-lang.org/)) 32 | 33 | * **Eff in F#**: A library for programming with algebraic effects in F# 34 | by Nick Palladinos 35 | ([GitHub](https://github.com/palladin/Eff)) 36 | 37 | * **Effects.js**: algebraic effects for Javascript based on Koka and Eff 38 | by Jason Butler 39 | ([GitHub](https://github.com/nythrox/effects.js)) 40 | 41 | * **Effekt Language**: A language with lexical effect handlers and lightweight effect polymorphism 42 | by Jonathan Brachthäuser, Philipp Schuster, and Klaus Ostermann 43 | ([www](https://effekt-lang.org)) 44 | 45 | * **EvEff**: A Haskell library for programming with evidence-translated effect handlers 46 | by Daan Leijen and Ningning Xie 47 | ([GitHub](https://github.com/xnning/EvEff)) 48 | 49 | * **Extensible effects**: a Haskell library for effects 50 | by Oleg Kiselyov 51 | ([hackage](https://hackage.haskell.org/package/extensible-effects)) 52 | ([www](http://okmij.org/ftp/Haskell/extensible/)) 53 | 54 | * **F\***: an ML-like effectful dependently typed functional programming language aimed at program verification 55 | by Microsoft Research and Inria 56 | ([www](https://fstar-lang.org)) 57 | 58 | * **Flix**: a functional programming language with effects and handlers, with inference based on Boolean unification 59 | by Magnus Madsen, Matthew Lutze, and Jonathan Lindegaard Starup 60 | ([www](https://flix.dev)) 61 | ([GitHub](https://github.com/flix/flix)) 62 | 63 | * **Fram**: programming language with lexically-scoped effect handlers and generalized labelled parameters 64 | by Patrycja Balik and Piotr Polesiuk 65 | ([GitHub](https://github.com/fram-lang/dbl)) 66 | 67 | * **Frank**: programming language with first-class handlers, invisible effect variables, and multihandlers 68 | by Sam Lindley, Conor McBride, and Craig McLaughlin 69 | ([GitHub](https://github.com/frank-lang/frank)) 70 | 71 | * **Freak**: a programming language with coalgebraic effects and cohandlers 72 | by Mateusz Urbańczyk 73 | ([GitHub](https://github.com/Tomatosoup97/freak)) 74 | 75 | * **Fused effects**: a Haskell library for effects 76 | by Rob Rix 77 | ([hackage](https://hackage.haskell.org/package/fused-effects)) 78 | ([GitHub](https://github.com/robrix/fused-effects)) 79 | 80 | * **Heftia**: a library for semantically-sound higher‑order algebraic effects and handlers in Haskell 81 | by Riyo Yamada 82 | ([GitHub](https://github.com/sayo-hs/heftia)) 83 | ([hackage](https://hackage.haskell.org/package/heftia-effects)) 84 | 85 | * **Helium**: a functional programming language with effect handlers and an ML-like module system 86 | by Dariusz Biernacki, Maciej Piróg, Piotr Polesiuk, and Filip Sieczkowski 87 | ([BitBucket](https://bitbucket.org/pl-uwr/helium)) 88 | 89 | * **Idris Effects**: library for algebraic effects and handlers in Idris - inspired by Eff language 90 | by Edwin Brady 91 | ([www](https://www.idris-lang.org/docs/current/effects_doc/)) 92 | ([GitHub](https://github.com/idris-lang/Idris-dev)) 93 | 94 | * **Koka**: a function-oriented language with effect inference 95 | by Daan Leijen 96 | ([GitHub](https://github.com/koka-lang/koka)) 97 | 98 | * **Lexa**: a language with lexical effect handlers that is compiled to stack switching 99 | by Cong Ma, Zhaoyi Ge, Edward Lee, and Yizhou Zhang 100 | ([GitHub](https://github.com/lexa-lang/lexa)) 101 | 102 | * **Links effect handlers**: an effect handlers extension for the Links web programming language 103 | by Daniel Hillerström and Sam Lindley 104 | ([www](https://links-lang.org)) 105 | ([GitHub](https://github.com/links-lang/links)) 106 | 107 | * **Multicore OCaml**: a multicore + effect handlers extension for OCaml 108 | by Stephen Dolan, Anil Madhavapeddy, KC Sivaramakrishnan, Leo White, and Jeremy Yallop 109 | ([GitHub](https://github.com/ocaml-multicore/ocaml-multicore/wiki)) 110 | (now incorporated into [OCaml 5+](https://github.com/ocaml/ocaml)) 111 | 112 | * **Polysemy**: a Haskell library for effects 113 | by Sandy Maguire 114 | ([hackage](http://hackage.haskell.org/package/polysemy)) 115 | ([GitHub](https://github.com/polysemy-research/polysemy)) 116 | 117 | * **Pyro**: a deep universal probabilistic programming language 118 | by Uber AI Labs 119 | ([www](http://pyro.ai/)) 120 | 121 | * **Scala Effekt**: extensible algebraic effects with handlers in Scala 122 | by Jonathan Brachthäuser 123 | ([GitHub](https://github.com/b-studios/scala-effekt)) 124 | 125 | * **Unison**: a programming language with effects called abilities, inspired by Frank 126 | by Unison Computing 127 | ([www](https://www.unisonweb.org/docs/language-reference#abilities-and-ability-handlers)) 128 | ([GitHub](https://github.com/unisonweb/unison)) 129 | 130 | * **WasmFXtime**: A fork of Wasmtime extended with support for effect handlers 131 | by Luna Phipps-Costin, Frank Emrich, and Daniel Hillerström 132 | ([www](https://wasmfx.dev)) 133 | ([GitHub](https://github.com/wasmfx/wasmfxtime)) 134 | 135 | * **Wasm/k**: WebAssembly, extended with support for first-class continuations 136 | by Donald Pinckney 137 | ([www](https://wasmk.github.io/)) 138 | ([GitHub](https://github.com/donald-pinckney/WasmContinuations)) 139 | 140 | * **Æff**: An interactive interpreter for asynchronous algebraic effects 141 | by Matija Pretnar and Danel Ahman 142 | ([www](https://matija.pretnar.info/aeff/)) 143 | ([GitHub](https://github.com/matijapretnar/aeff)) 144 | 145 | * **atnos-org/eff**: extensible effects for Cats in Scala 146 | by Eric Torreborre 147 | ([www](http://atnos-org.github.io/eff/)) 148 | ([GitHub](http://github.com/atnos-org/eff)) 149 | 150 | * **cpp-effects**: effect handlers in C++ 151 | by Maciej Piróg 152 | ([GitHub](https://github.com/maciejpirog/cpp-effects)) 153 | 154 | * **libhandler**: an implementation of algebraic effects and handlers in portable C99 155 | by Daan Leijen 156 | ([GitHub](https://github.com/koka-lang/libhandler)) 157 | 158 | * **libmprompt**: robust multi-prompt delimited control and effect handlers in C/C++ 159 | by Daan Leijen 160 | ([GitHub](https://github.com/koka-lang/libmprompt)) 161 | 162 | * **effects**: An experimental C++ runtime effect system 163 | by Michael Truog 164 | ([GitHub](https://github.com/okeuday/effects)) 165 | 166 | * **multicont**: continuations with multi-shot semantics in OCaml 167 | by Daniel Hillerström 168 | ([GitHub](https://github.com/dhil/ocaml-multicont)) 169 | 170 | * **shonky**: a dynamically typed variant of Frank with C-like syntax 171 | by Conor McBride 172 | ([GitHub](https://github.com/pigworker/shonky)) 173 | 174 | * **Turbolift**: algebraic effects for Scala 3 175 | by Marcin Żebrowski 176 | ([www](https://marcinzh.github.io/turbolift/)) 177 | ([GitHub](https://github.com/marcinzh/turbolift)) 178 | 179 | * **Enterprise**: library for creating HTTP services using algebraic effects and handlers (Turbolift) 180 | by Marcin Żebrowski 181 | ([GitHub](https://github.com/marcinzh/enterprise)) 182 | 183 | ## Tutorials 184 | 185 | ### 2022 186 | 187 | * **Effect-Handler Oriented Programming** (lecture given at [SPLV](https://www.macs.hw.ac.uk/splv/splv-2022/)) 188 | by Sam Lindley 189 | ([YouTube](https://www.youtube.com/watch?v=G8XMRZKOhG0)) 190 | ([slides](https://www.macs.hw.ac.uk/splv/wp-content/uploads/2022/07/ehop.pdf)) 191 | 192 | * **Effect handler oriented programming** (lecture series given at [OPLSS](https://www.cs.uoregon.edu/research/summerschool/summer22/topics.php#Lindley)) 193 | by Sam Lindley 194 | (Videos: [1](https://www.cs.uoregon.edu/research/summerschool/summer22/lectures/Lindley1.mp4), 195 | [2](https://www.cs.uoregon.edu/research/summerschool/summer22/lectures/Lindley2.mp4), 196 | [3](https://www.cs.uoregon.edu/research/summerschool/summer22/lectures/Lindley3.mp4), 197 | [4](https://www.cs.uoregon.edu/research/summerschool/summer22/lectures/Lindley4.mp4)) 198 | (Notes: [1](https://www.cs.uoregon.edu/research/summerschool/summer22/lectures/handlers.pdf), 199 | [2](https://www.cs.uoregon.edu/research/summerschool/summer22/lectures/ehop.pdf), 200 | [3](https://www.cs.uoregon.edu/research/summerschool/summer22/lectures/effexp.pdf), 201 | [4](https://www.cs.uoregon.edu/research/summerschool/summer22/lectures/et.pdf)) 202 | 203 | ### 2018 204 | 205 | * **What is algebraic about algebraic effects and handlers?** (tutorial given at [Dagstuhl](https://www.dagstuhl.de/en/program/calendar/semhp/?semnr=18172) and [OPLSS](https://www.cs.uoregon.edu/research/summerschool/summer18/topics.php)) 206 | by Andrej Bauer 207 | ([doi](https://doi.org/10.48550/arXiv.1807.05923)) 208 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-1807-05923.html)) 209 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-1807-05923.html?view=bibtex)) 210 | ([arxiv](https://arxiv.org/abs/1807.05923)) 211 | ([pdf](https://arxiv.org/pdf/1807.05923)) 212 | (Videos: [1.1](https://www.cs.uoregon.edu/research/summerschool/summer18/lectures/bauer1-1.mp4), 213 | [1.2](https://www.cs.uoregon.edu/research/summerschool/summer18/lectures/bauer1-2.mp4), 214 | [1.3](https://www.cs.uoregon.edu/research/summerschool/summer18/lectures/bauer1-3.mp4), 215 | [2.1](https://www.cs.uoregon.edu/research/summerschool/summer18/lectures/bauer2-1.mp4), 216 | [2.2](https://www.cs.uoregon.edu/research/summerschool/summer18/lectures/bauer2-2.mp4), 217 | [2.3](https://www.cs.uoregon.edu/research/summerschool/summer18/lectures/bauer2-3.mp4)) 218 | 219 | ### 2017 220 | 221 | * **Concurrent Programming with Effect Handlers** (tutorial given at [CUFP](http://cufp.org/2017/c3-daniel-hillerstrom-kc-concurrent-programming-with-effect-handlers.html)) 222 | by Daniel Hillerström and KC Sivaramakrishnan 223 | ([www](http://cufp.org/2017/c3-daniel-hillerstrom-kc-concurrent-programming-with-effect-handlers.html)) 224 | ([GitHub](https://github.com/ocamllabs/ocaml-effects-tutorial)) 225 | 226 | ### 2015 227 | 228 | * **An Introduction to Algebraic Effects and Handlers. Invited tutorial paper** (MFPS 2015) 229 | by Matija Pretnar 230 | ([doi](https://doi.org/10.1016/j.entcs.2015.12.003)) 231 | ([dblp](https://dblp.uni-trier.de/rec/journals/entcs/Pretnar15.html)) 232 | ([bibtex](https://dblp.uni-trier.de/rec/journals/entcs/Pretnar15.html?view=bibtex)) 233 | ([pdf](http://www.eff-lang.org/handlers-tutorial.pdf)) 234 | 235 | ## Papers 236 | 237 | ### 2025 238 | 239 | * **Affect: An Affine Type and Effect System** (POPL 2025) 240 | by Orpheas van Rooij and Robbert Krebbers 241 | ([doi](https://doi.org/10.1145/3704841)) 242 | ([dblp](https://dblp.org/rec/journals/pacmpl/RooijK25.html)) 243 | ([bibtex](https://dblp.org/rec/journals/pacmpl/RooijK25.html?view=bibtex)) 244 | ([pdf](https://iris-project.org/pdfs/2025-popl-affect.pdf)) 245 | ([artifact](https://zenodo.org/records/14198790)) 246 | 247 | * **Algebraic Temporal Effects: Temporal Verification of Recursively Typed Higher-Order Programs** (POPL 2025) 248 | by Taro Sekiyama and Hiroshi Unno 249 | ([doi](https://doi.org/10.1145/3704914)) 250 | ([dblp](https://dblp.org/rec/journals/pacmpl/SekiyamaU25.html)) 251 | ([bibtex](https://dblp.org/rec/journals/pacmpl/SekiyamaU25.html?view=bibtex)) 252 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3704914)) 253 | 254 | ### 2024 255 | 256 | * **Signature restriction for polymorphic algebraic effects** (JFP 2024) 257 | by Taro Sekiyama, Takeshi Tsukada, and Atsushi Igarashi 258 | ([doi](https://doi.org/10.1017/S0956796824000054)) 259 | ([dblp](https://dblp.org/rec/journals/jfp/SekiyamaTI24.html)) 260 | ([bibtex](https://dblp.org/rec/journals/jfp/SekiyamaTI24.html?view=bibtex)) 261 | ([pdf](https://www.cambridge.org/core/services/aop-cambridge-core/content/view/1FCD90F7590C031791DBE08DCD65CED5/S0956796824000054a.pdf/signature_restriction_for_polymorphic_algebraic_effects.pdf)) 262 | 263 | * **Parallel Algebraic Effect Handlers** (ICFP 2024) 264 | by Ningning Xie, Daniel D. Johnson, Dougal Maclaurin, and Adam Paszke 265 | ([doi](https://doi.org/10.1145/3674651)) 266 | ([dblp](https://dblp.org/rec/journals/pacmpl/Xie0MP24.html)) 267 | ([bibtex](https://dblp.org/rec/journals/pacmpl/Xie0MP24.html?view=bibtex)) 268 | ([pdf](https://xnning.github.io/papers/icfp24parallel.pdf)) 269 | 270 | * **Effect Handlers for C via Coroutines** (OOPSLA 2024) 271 | by Mario Alvarez-Picallo, Teodoro Freund, Dan R. Ghica, and Sam Lindley 272 | ([doi](https://doi.org/10.1145/3689798)) 273 | ([dblp](https://dblp.org/rec/journals/pacmpl/Alvarez-Picallo24.html)) 274 | ([bibtex](https://dblp.org/rec/journals/pacmpl/Alvarez-Picallo24.html?view=bibtex)) 275 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3689798)) 276 | 277 | * **A framework for higher-order effects & handlers** (SCP 2024) 278 | by Birthe van den Berg and Tom Schrijvers 279 | ([doi](https://doi.org/10.1016/j.scico.2024.103086)) 280 | ([dblp](https://dblp.org/rec/journals/scp/BergS24.html)) 281 | ([bibtex](https://dblp.org/rec/journals/scp/BergS24.html?view=bibtex)) 282 | ([pdf](https://lirias.kuleuven.be/retrieve/724996)) 283 | 284 | * **Making a Curry Interpreter using Effects and Handlers** (Haskell 2024) 285 | by Niels Bunkenburg and Nicolas Wu 286 | ([doi](https://doi.org/10.1145/3677999.3678279)) 287 | ([dblp](https://dblp.org/rec/conf/haskell/BunkenburgW24.html)) 288 | ([bibtex](https://dblp.org/rec/conf/haskell/BunkenburgW24.html?view=bibtex)) 289 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3677999.3678279)) 290 | 291 | * **A Calculus for Scoped Effects & Handlers** (LMCS 2024) 292 | by Roger Bosman, Birthe van den Berg, Wenhao Tang, and Tom Schrijvers 293 | ([doi](https://doi.org/10.46298/lmcs-20(4:17)2024)) 294 | ([dblp](https://dblp.org/rec/journals/lmcs/BosmanBTS24.html)) 295 | ([bibtex](https://dblp.org/rec/journals/lmcs/BosmanBTS24.html?view=bibtex)) 296 | ([pdf](https://lmcs.episciences.org/14832/pdf)) 297 | 298 | * **Algebraic effects and handlers for arrows** (JFP 2024) 299 | by Takahiro Sanada 300 | ([doi](https://doi.org/10.1017/S0956796824000066)) 301 | ([dblp](https://dblp.org/rec/journals/jfp/Sanada24.html)) 302 | ([bibtex](https://dblp.org/rec/journals/jfp/Sanada24.html?view=bibtex)) 303 | ([pdf](https://www.cambridge.org/core/services/aop-cambridge-core/content/view/31638FCCC07130C30C42853CF0E0A4C2/S0956796824000066a.pdf/algebraic-effects-and-handlers-for-arrows.pdf)) 304 | 305 | * **Scoped Effects as Parameterized Algebraic Theories** (ESOP 2024) 306 | by Sam Lindley, Cristina Matache, Sean Moss, Sam Staton, Nicolas Wu, and Zhixuan Yang 307 | ([doi](https://doi.org/10.1007/978-3-031-57262-3_1)) 308 | ([dblp](https://dblp.org/rec/conf/esop/LindleyMMSWY24.html)) 309 | ([bibtex](https://dblp.org/rec/conf/esop/LindleyMMSWY24.html?view=bibtex)) 310 | ([pdf](https://arxiv.org/pdf/2402.03103)) 311 | 312 | * **Lexical Effect Handlers, Directly** (OOPSLA 2024) 313 | by Cong Ma, Zhaoyi Ge, Edward Lee, and Yizhou Zhang 314 | ([doi](https://doi.org/10.1145/3689770)) 315 | ([dblp](https://dblp.org/rec/journals/pacmpl/MaGLZ24.html)) 316 | ([bibtex](https://dblp.org/rec/journals/pacmpl/MaGLZ24.html?view=bibtex)) 317 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3689770)) 318 | 319 | * **Specification and Verification for Unrestricted Algebraic Effects and Handling** (ICFP 2024) 320 | by Yahui Song, Darius Foo, and Wei-Ngan Chin 321 | ([doi](https://doi.org/10.1145/3674656)) 322 | ([pdf](https://www.comp.nus.edu.sg/~yahuis/ICFP24/ICFP2024_TR.pdf)) 323 | 324 | * **Asymptotic speedup via effect handlers** (JFP 2024) 325 | by Daniel Hillerström, Sam Lindley, and John Longley 326 | ([doi](https://doi.org/10.1017/s0956796824000030)) 327 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/HillerstromLL24.html)) 328 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/HillerstromLL24.html?view=bibtex)) 329 | ([pdf](https://www.cambridge.org/core/services/aop-cambridge-core/content/view/296879DE2FD96FB6CF388F27978C76E4/S0956796824000030a.pdf/asymptotic-speedup-via-effect-handlers.pdf)) 330 | 331 | * **Active Objects Based on Algebraic Effects** (Active Object Languages: Current Research Trends) 332 | by Martin Andrieux, Ludovic Henrio, and Gabriel Radanne 333 | ([doi](https://doi.org/10.1007/978-3-031-51060-1_1)) 334 | ([dblp](https://dblp.uni-trier.de/rec/books/sp/24/AndrieuxHR24.html)) 335 | ([bibtex](https://dblp.uni-trier.de/rec/books/sp/24/AndrieuxHR24.html?view=bibtex)) 336 | ([pdf](https://hal.science/hal-04388798/document)) 337 | 338 | * **Algebraic Effects Meet Hoare Logic in Cubical Agda** (POPL 2024) 339 | by Donnacha Oisín Kidney, Zhixuan Yang, and Nicolas Wu 340 | ([doi](https://doi.org/10.1145/3632898)) 341 | ([dblp](https://dblp.org/rec/journals/pacmpl/KidneyYW24.html)) 342 | ([bibtex](https://dblp.org/rec/journals/pacmpl/KidneyYW24.html?view=bibtex)) 343 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3632898)) 344 | 345 | * **Soundly Handling Linearity** (POPL 2024) 346 | by Wenhao Tang, Daniel Hillerström, Sam Lindley, and J. Garrett Morris 347 | ([doi](https://doi.org/10.1145/3632896)) 348 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/TangHLM24.html)) 349 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/TangHLM24.html?view=bibtex)) 350 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3632896)) 351 | 352 | * **On Model-Checking Higher-Order Effectful Programs** (POPL 2024) 353 | by Ugo Dal Lago and Alexis Ghyselen 354 | ([doi](https://doi.org/10.1145/3632929)) 355 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/LagoG24.html)) 356 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/LagoG24.html?view=bibtex)) 357 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3632929)) 358 | ([arxiv (extended version)](https://arxiv.org/abs/2308.16542)) 359 | ([pdf (extended version)](https://arxiv.org/pdf/2308.16542)) 360 | 361 | * **Effectful Software Contracts** (POPL 2024) 362 | by Cameron Moy, Christos Dimoulas, and Matthias Felleisen 363 | ([doi](https://doi.org/10.1145/3632930)) 364 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/MoyDF24.html)) 365 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/MoyDF24.html?view=bibtex)) 366 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3632930)) 367 | 368 | * **An Intrinsically Typed Compiler for Algebraic Effect Handlers** (PEPM 2024) 369 | by Syouki Tsuyama, Youyou Cong, and Hidehiko Masuhara 370 | ([doi](https://doi.org/10.1145/3635800.3636968)) 371 | ([dblp](https://dblp.uni-trier.de/rec/conf/pepm/TsuyamaCM24.html)) 372 | ([bibtex](https://dblp.uni-trier.de/rec/conf/pepm/TsuyamaCM24.html?view=bibtex)) 373 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3635800.3636968)) 374 | 375 | * **Associated Effects: Flexible Abstractions for Effectful Programming** (PLDI 2024) 376 | by Matthew Lutze and Magnus Madsen 377 | ([doi](https://doi.org/10.1145/365639)) 378 | ([dblp](https://dblp.org/rec/journals/pacmpl/LutzeM24.html)) 379 | ([bibtex](https://dblp.org/rec/journals/pacmpl/LutzeM24.html?view=bibtex)) 380 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3656393https://dl.acm.org/doi/pdf/10.1145/3656393)) 381 | 382 | ### 2023 383 | 384 | * **Verifying an Effect-Handler-Based Define-By-Run Reverse-Mode AD Library** (LMCS 2023) 385 | by Paulo Emílio de Vilhena and François Pottier 386 | ([doi](https://doi.org/10.46298/lmcs-19(4:5)2023)) 387 | ([dblp](https://dblp.uni-trier.de/rec/journals/lmcs/VilhenaP23.html)) 388 | ([bibtex](https://dblp.uni-trier.de/rec/journals/lmcs/VilhenaP23.html?view=bibtex)) 389 | ([pdf](https://devilhena-paulo.github.io/files/verifying-rmad.pdf)) 390 | ([Coq formalisation](https://gitlab.inria.fr/cambium/hazel/-/blob/master/papers/LMCS-RMAD.md)) 391 | 392 | * **From Capabilities to Regions: Enabling Efficient Compilation of Lexical Effect Handlers** (OOPSLA 2023) 393 | by Marius Müller, Philipp Schuster, Jonathan Lindegaard Starup, Klaus Ostermann, and Jonathan Immanuel Brachthäuser 394 | ([doi](https://doi.org/10.1145/3622831)) 395 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/MullerSSOB23.html)) 396 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/MullerSSOB23.html?view=bibtex)) 397 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3622831)) 398 | 399 | * **Continuing WebAssembly with Effect Handlers** (OOPSLA 2023) 400 | by Luna Phipps-Costin, Andreas Rossberg, Arjun Guha, Daan Leijen, Daniel Hillerström, K. C. Sivaramakrishnan, Matija Pretnar, and Sam Lindley 401 | ([doi](https://doi.org/10.1145/3622814)) 402 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/PhippsCostinRGLHSPL23.html)) 403 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/PhippsCostinRGLHSPL23.html?view=bibtex)) 404 | ([arxiv](https://arxiv.org/abs/2308.08347)) 405 | ([pdf](https://arxiv.org/pdf/2308.08347)) 406 | 407 | * **Typed Equivalence of Labeled Effect Handlers and Labeled Delimited Control Operators** (PPDP 2023) 408 | by Kazuki Ikemori, Youyou Cong, and Hidehiko Masuhara 409 | ([doi](https://doi.org/10.1145/3610612.3610616)) 410 | ([dblp](https://dblp.uni-trier.de/rec/conf/ppdp/IkemoriCM23.html)) 411 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ppdp/IkemoriCM23.html?view=bibtex)) 412 | ([pdf](https://prg.is.titech.ac.jp/papers/pdf/ppdp2023.pdf)) 413 | 414 | * **Error Localization for Sequential Effect Systems** (SAS 2023) 415 | by Colin S. Gordon and Chaewon Yun 416 | ([doi](https://doi.org/10.1007/978-3-031-44245-2_16)) 417 | ([dblp](https://dblp.uni-trier.de/rec/conf/sas/GordonY23.html)) 418 | ([bibtex](https://dblp.uni-trier.de/rec/conf/sas/GordonY23.html?view=bibtex)) 419 | 420 | * **A General Fine-Grained Reduction Theory for Effect Handlers** (ICFP 2023) 421 | by Filip Sieczkowski, Mateusz Pyzik, and Dariusz Biernacki 422 | ([doi](https://doi.org/10.1145/3607848)) 423 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/SieczkowskiPB23.html)) 424 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/SieczkowskiPB23.html?view=bibtex)) 425 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3607848)) 426 | 427 | * **With or Without You: Programming with Effect Exclusion** (ICFP 2023) 428 | by Matthew Lutze, Magnus Madsen, Philipp Schuster, and Jonathan Immanuel Brachthäuser 429 | ([doi](https://doi.org/10.1145/3607846)) 430 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/LutzeMSB23.html)) 431 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/LutzeMSB23.html?view=bibtex)) 432 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3607846)) 433 | 434 | * **A Type System for Effect Handlers and Dynamic Labels** (ESOP 2023) 435 | by Paulo Emílio de Vilhena and François Pottier 436 | ([doi](https://link.springer.com/chapter/10.1007/978-3-031-30044-8_9)) 437 | ([dblp](https://dblp.uni-trier.de/rec/conf/esop/VilhenaP23.html)) 438 | ([bibtex](https://dblp.uni-trier.de/rec/conf/esop/VilhenaP23.html?view=bibtex)) 439 | ([pdf](https://devilhena-paulo.github.io/files/tes.pdf)) 440 | ([Coq formalisation](https://gitlab.inria.fr/cambium/tes)) 441 | 442 | * **Hefty Algebras: Modular Elaboration of Higher-Order Algebraic Effects** (POPL 2023) 443 | by Casper Bach Poulsen and Cas van der Rest 444 | ([doi](https://doi.org/10.1145/3571255)) 445 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/PoulsenR23.html)) 446 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/PoulsenR23.html?view=bibtex)) 447 | ([pdf](http://casperbp.net/store/hefty-algebras.pdf)) 448 | 449 | * **Towards a Reflection for Effect Handlers** (PEPM 2023) 450 | by Youyou Cong and Kenichi Asai 451 | ([doi](https://doi.org/10.1145/3571786.3573015)) 452 | ([dblp](https://dblp.uni-trier.de/rec/conf/pepm/CongA23.html)) 453 | ([bibtex](https://dblp.uni-trier.de/rec/conf/pepm/CongA23.html?view=bibtex)) 454 | 455 | ### 2022 456 | 457 | * **Category-Graded Algebraic Theories and Effect Handlers** (MFPS 2022) 458 | by Takahiro Sanada 459 | ([doi](https://doi.org/10.46298/entics.10491)) 460 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-2212-07015.html)) 461 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-2212-07015.html?view=bibtex)) 462 | ([pdf](https://www.kurims.kyoto-u.ac.jp/~tsanada/papers/mfps2022-cat-graded-preproceedings-extended.pdf)) 463 | 464 | * **Modular probabilistic models via algebraic effects** (ICFP 2022) 465 | by Minh Nguyen, Roly Perera, Meng Wang, and Nicolas Wu 466 | ([doi](https://doi.org/10.1145/3547635)) 467 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/NguyenPWW22.html)) 468 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/NguyenPWW22.html?view=bibtex)) 469 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3547635)) 470 | 471 | * **Automated Temporal Verification for Algebraic Effects** (APLAS 2022) 472 | by Yahui Song, Darius Foo, and Wei-Ngan Chin 473 | ([doi](https://doi.org/10.1007/978-3-031-21037-2_5)) 474 | ([dblp](https://dblp.uni-trier.de/rec/conf/aplas/SongFC22.html)) 475 | ([bibtex](https://dblp.uni-trier.de/rec/conf/aplas/SongFC22.html?view=bibtex)) 476 | ([pdf](https://www.comp.nus.edu.sg/~yahuis/APLAS2022.pdf)) 477 | 478 | * **An Algebraic Theory for Shared-State Concurrency** (APLAS 2022) 479 | by Yotam Dvir, Ohad Kammar, and Ori Lahav 480 | ([doi](https://doi.org/10.1007/978-3-031-21037-2_1)) 481 | ([dblp](https://dblp.uni-trier.de/rec/conf/aplas/DvirKL22.html)) 482 | ([bibtex](https://dblp.uni-trier.de/rec/conf/aplas/DvirKL22.html?view=bibtex)) 483 | ([pdf](https://www.cs.tau.ac.il/~orilahav/papers/aplas22full.pdf)) 484 | 485 | * **First-class names for effect handlers** (OOPSLA 2022) 486 | by Ningning Xie, Youyou Cong, Kazuki Ikemori, and Daan Leijen 487 | ([doi](https://doi.org/10.1145/3563289)) 488 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/XieCIL22.html)) 489 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/XieCIL22.html?view=bibtex)) 490 | ([pdf](https://xnning.github.io/papers/oopsla22namedh.pdf)) 491 | 492 | * **High-level effect handlers in C++** (OOPSLA 2022) 493 | by Dan R. Ghica, Sam Lindley, Marcos Maroñas Bravo, and Maciej Piróg 494 | ([doi](https://doi.org/10.1145/3563445)) 495 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/GhicaLBP22.html)) 496 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/GhicaLBP22.html?view=bibtex)) 497 | ([pdf](https://homepages.inf.ed.ac.uk/slindley/papers/cppeff.pdf)) 498 | 499 | * **Algebraic Effects for Extensible Dynamic Semantics** (Journal of Logic, Language and Information) 500 | by Julian Grove and Jean-Philippe Bernardy 501 | ([doi](https://doi.org/10.1007/s10849-022-09378-7)) 502 | ([dblp](https://dblp.uni-trier.de/rec/journals/jolli/GroveB23.html)) 503 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jolli/GroveB23.html?view=bibtex)) 504 | ([pdf](https://semanticsarchive.net/Archive/TMxNGE3M/algebraic.pdf)) 505 | 506 | * **A typed continuation-passing translation for lexical effect handlers** (PLDI 2022) 507 | by Philipp Schuster, Jonathan Immanuel Brachthäuser, Marius Müller, and Klaus Ostermann 508 | ([doi](https://doi.org/10.1145/3519939.3523710)) 509 | ([dblp](https://dblp.uni-trier.de/rec/conf/pldi/SchusterB0O22.html)) 510 | ([bibtex](https://dblp.uni-trier.de/rec/conf/pldi/SchusterB0O22.html?view=bibtex)) 511 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3519939.3523710)) 512 | 513 | * **Structured Handling of Scoped Effects** (ESOP 2022) 514 | by Zhixuan Yang, Marco Paviotti, Nicolas Wu, Birthe van den Berg, and Tom Schrijvers 515 | ([doi](https://doi.org/10.1007/978-3-030-99336-8_17)) 516 | ([dblp](https://dblp.uni-trier.de/rec/conf/esop/YangPWBS22.html)) 517 | ([bibtex](https://dblp.uni-trier.de/rec/conf/esop/YangPWBS22.html?view=bibtex)) 518 | ([pdf](https://link.springer.com/content/pdf/10.1007/978-3-030-99336-8_17.pdf)) 519 | ([arxiv (extended version)](https://arxiv.org/abs/2201.10287)) 520 | ([pdf (extended version)](https://arxiv.org/pdf/2201.10287)) 521 | 522 | * **Effects, capabilities, and boxes: from scope-based reasoning to type-based reasoning and back** (OOPSLA 2022) 523 | by Jonathan Immanuel Brachthäuser, Philipp Schuster, Edward Lee, and Aleksander Boruch-Gruszecki 524 | ([doi](https://doi.org/10.1145/3527320)) 525 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/BrachthauserSLB22.html)) 526 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/BrachthauserSLB22.html?view=bibtex)) 527 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3527320)) 528 | 529 | ### 2021 530 | 531 | * **Efficient compilation of algebraic effect handlers** (OOPSLA 2021) 532 | by Georgios Karachalias, Filip Koprivec, Matija Pretnar, and Tom Schrijvers 533 | ([doi](https://doi.org/10.1145/3485479)) 534 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/KarachaliasKPS21.html)) 535 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/KarachaliasKPS21.html?view=bibtex)) 536 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3485479)) 537 | 538 | * **Latent Effects for Reusable Language Components** (APLAS 2021) 539 | by Birthe van den Berg, Tom Schrijvers, Casper Bach Poulsen, and Nicolas Wu 540 | ([doi](https://doi.org/10.1007/978-3-030-89051-3_11)) 541 | ([dblp](https://dblp.uni-trier.de/rec/conf/aplas/BergSPW21.html)) 542 | ([bibtex](https://dblp.uni-trier.de/rec/conf/aplas/BergSPW21.html?view=bibtex)) 543 | ([arxiv (extended version)](https://arxiv.org/abs/2108.11155)) 544 | ([pdf (extended version)](https://arxiv.org/pdf/2108.11155)) 545 | 546 | * **Composing UNIX with Effect Handlers** (ML Workshop 2021) 547 | by Daniel Hillerström 548 | ([pdf](https://dhil.net/research/papers/unix-ml2021.pdf)) 549 | 550 | * **Safe mutation with algebraic effects** (Haskell 2021) 551 | by Hashan Punchihewa and Nicolas Wu 552 | ([doi](https://doi.org/10.1145/3471874.3472988)) 553 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/PunchihewaW21.html)) 554 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/PunchihewaW21.html?view=bibtex)) 555 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3471874.3472988)) 556 | 557 | * **Contextual modal types for algebraic effects and handlers** (ICFP 2021) 558 | by Nikita Zyuzin and Aleksandar Nanevski 559 | ([doi](https://doi.org/10.1145/3473580)) 560 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/ZyuzinN21.html)) 561 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/ZyuzinN21.html?view=bibtex)) 562 | ([pdf](https://software.imdea.org/~aleks/icfp21/icfp21.pdf)) 563 | 564 | * **Reasoning about effect interaction by fusion** (ICFP 2021) 565 | by Zhixuan Yang and Nicolas Wu 566 | ([doi](https://doi.org/10.1145/3473578)) 567 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/YangW21.html)) 568 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/YangW21.html?view=bibtex)) 569 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3473578)) 570 | ([extended pdf](https://yangzhixuan.github.io/pdf/fused-reasoning-appendices.pdf)) 571 | 572 | * **Generalized evidence passing for effect handlers: efficient compilation of effect handlers to C** (ICFP 2021) 573 | by Ningning Xie and Daan Leijen 574 | ([doi](https://doi.org/10.1145/3473576)) 575 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/XieL21.html)) 576 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/XieL21.html?view=bibtex)) 577 | ([pdf](https://xnning.github.io/papers/multip.pdf)) 578 | 579 | * **A Functional Abstraction of Typed Invocation Contexts** (FSCD 2021) 580 | by Youyou Cong, Chiaki Ishio, Kaho Honda, and Kenichi Asai 581 | ([doi](https://doi.org/10.4230/LIPIcs.FSCD.2021.12)) 582 | ([dblp](https://dblp.uni-trier.de/rec/conf/fscd/CongIHA21.html)) 583 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fscd/CongIHA21.html?view=bibtex)) 584 | ([pdf](https://drops.dagstuhl.de/opus/volltexte/2021/14250/pdf/LIPIcs-FSCD-2021-12.pdf)) 585 | 586 | * **Derivation of a Virtual Machine For Four Variants of Delimited-Control Operators** (FSCD 2021) 587 | by Maika Fujii and Kenichi Asai 588 | ([doi](https://doi.org/10.4230/LIPIcs.FSCD.2021.16)) 589 | ([dblp](https://dblp.uni-trier.de/rec/conf/fscd/FujiiA21.html)) 590 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fscd/FujiiA21.html?view=bibtex)) 591 | ([pdf](https://drops.dagstuhl.de/opus/volltexte/2021/14254/pdf/LIPIcs-FSCD-2021-16.pdf)) 592 | 593 | * **Contextual Effect Polymorphism Meets Bidirectional Effects (Extended Abstract)** (TyDe 2021) 594 | by Kazuki Niimi, Youyou Cong, and Jonathan Immanuel Brachthäuser 595 | ([pdf](https://prg.is.titech.ac.jp/papers/pdf/tyde2021.pdf)) 596 | 597 | * **Formalising Algebraic Effects with Non-Recoverable Failure** (HOPE 2021) 598 | by Timotej Tomandl and Dominic Orchard 599 | ([pdf](https://www.cs.kent.ac.uk/people/staff/dao7/publ/timo-hope21.pdf)) 600 | 601 | * **First-class Named Handlers** (HOPE 2021) 602 | by Ningning Xie, Youyou Cong, and Daan Leijen 603 | ([pdf](https://researchmap.jp/youyoucong/presentations/32929533/attachment_file.pdf)) 604 | 605 | * **Higher-Order Asynchronous Effects** (HOPE 2021) 606 | by Danel Ahman, Matija Pretnar, and Janez Radešček 607 | ([pdf](https://danel.ahman.ee/papers/hope21.pdf)) 608 | 609 | * **Handler Calculus** (HOPE 2021) 610 | by Sam Lindley 611 | ([pdf](https://homepages.inf.ed.ac.uk/slindley/papers/handler-calculus-draft-may2021.pdf)) 612 | 613 | * **Retrofitting effect handlers onto OCaml** (PLDI 2021) 614 | by K. C. Sivaramakrishnan, Stephen Dolan, Leo White, Tom Kelly, Sadiq Jaffer, and Anil Madhavapeddy 615 | ([doi](https://doi.org/10.1145/3453483.3454039)) 616 | ([dblp](https://dblp.uni-trier.de/rec/conf/pldi/Sivaramakrishnan21.html)) 617 | ([bibtex](https://dblp.uni-trier.de/rec/conf/pldi/Sivaramakrishnan21.html?view=bibtex)) 618 | ([arxiv](https://arxiv.org/abs/2104.00250)) 619 | ([pdf](https://arxiv.org/pdf/2104.00250)) 620 | 621 | * **Polymorphic Iterable Sequential Effect Systems** (TOPLAS 2021) 622 | by Colin S. Gordon 623 | ([doi](https://doi.org/10.1145/3450272)) 624 | ([dblp](https://dblp.uni-trier.de/rec/journals/toplas/Gordon21.html)) 625 | ([bibtex](https://dblp.uni-trier.de/rec/journals/toplas/Gordon21.html?view=bibtex)) 626 | ([arxiv](https://arxiv.org/abs/1808.02010)) 627 | ([pdf](https://arxiv.org/pdf/1808.02010)) 628 | 629 | * **Automatic Differentiation via Effects and Handlers: An Implementation in Frank** (PEPM 2021) 630 | by Jesse Sigal 631 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-2101-08095.html)) 632 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-2101-08095.html?view=bibtex)) 633 | ([arxiv](https://arxiv.org/abs/2101.08095)) 634 | ([pdf](https://arxiv.org/pdf/2101.08095)) 635 | 636 | * **Staged Effects and Handlers for Modular Languages with Abstraction** (PEPM 2021) 637 | by Casper Bach Poulsen, Cas van der Rest, and Tom Schrijvers 638 | ([pdf](https://casvdrest.github.io/staged-effects.agda/pepm21.pdf)) 639 | 640 | * **A Separation Logic for Effect Handlers** (POPL 2021) 641 | by Paulo Emílio de Vilhena and François Pottier 642 | ([doi](https://doi.org/10.1145/3434314)) 643 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/VilhenaP21.html)) 644 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/VilhenaP21.html?view=bibtex)) 645 | ([pdf](https://devilhena-paulo.github.io/files/separation-logic-effect-handlers.pdf)) 646 | ([Coq formalisation](https://gitlab.inria.fr/cambium/hazel)) 647 | 648 | * **Asynchronous effects** (POPL 2021) 649 | by Danel Ahman and Matija Pretnar 650 | ([doi](https://doi.org/10.1145/3434305)) 651 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/AhmanP21.html)) 652 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/AhmanP21.html?view=bibtex)) 653 | ([arxiv](https://arxiv.org/abs/2003.02110)) 654 | ([pdf](https://arxiv.org/pdf/2003.02110)) 655 | 656 | ### 2020 657 | 658 | * **Graded Algebraic Theories** (FoSSaCS 2020) 659 | by Satoshi Kura 660 | ([doi](https://doi.org/10.1007/978-3-030-45231-5_21)) 661 | ([dblp](https://dblp.uni-trier.de/rec/conf/fossacs/Kura20.html)) 662 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fossacs/Kura20.html?view=bibtex)) 663 | ([pdf](https://link.springer.com/content/pdf/10.1007/978-3-030-45231-5_21.pdf)) 664 | 665 | * **Modular verification of programs with effects and effects handlers** (FAOC 2020) 666 | by Thomas Letan, Yann Régis-Gianas, Pierre Chifflier, and Guillaume Hiet 667 | ([doi](https://doi.org/10.1007/s00165-020-00523-2)) 668 | ([dblp](https://dblp.uni-trier.de/rec/journals/fac/LetanRCH21.html)) 669 | ([bibtex](https://dblp.uni-trier.de/rec/journals/fac/LetanRCH21.html?view=bibtex)) 670 | 671 | * **Not by equations alone: Reasoning with extensible effects** (JFP 2020) 672 | by Oleg Kiselyov, Shin-Cheng Mu, and Amr Sabry 673 | ([doi](https://doi.org/10.1017/S0956796820000271)) 674 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/KiselyovMS21.html)) 675 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/KiselyovMS21.html?view=bibtex)) 676 | ([pdf](https://www.okmij.org/ftp/Haskell/extensible/denot.pdf)) 677 | 678 | * **Automatic Reparameterisation of Probabilistic Programs** (ICML 2020) 679 | by Maria I. Gorinova, Dave Moore, and Matthew D. Hoffman 680 | ([dblp](https://dblp.uni-trier.de/rec/conf/icml/GorinovaMH20.html)) 681 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icml/GorinovaMH20.html?view=bibtex)) 682 | ([pdf](http://proceedings.mlr.press/v119/gorinova20a/gorinova20a.pdf)) 683 | 684 | * **Compiling symbolic execution with staging and algebraic effects** (OOPSLA 2020) 685 | by Guannan Wei, Oliver Bračevac, Shangyin Tan, and Tiark Rompf 686 | ([doi](https://doi.org/10.1145/3428232)) 687 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/WeiBTR20.html)) 688 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/WeiBTR20.html?view=bibtex)) 689 | ([pdf](https://bracevac.org/assets/pdf/oopsla20.pdf)) 690 | 691 | * **Composing effects into tasks and workflows** (Haskell 2020) 692 | by Yves Parès, Jean-Philippe Bernardy, and Richard A. Eisenberg 693 | ([doi](https://doi.org/10.1145/3406088.3409023)) 694 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/ParesBE20.html)) 695 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/ParesBE20.html?view=bibtex)) 696 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3406088.3409023)) 697 | 698 | * **Handling bidirectional control flow** (OOPSLA 2020) 699 | by Yizhou Zhang, Guido Salvaneschi, and Andrew C. Myers 700 | ([doi](https://doi.org/10.1145/3428207)) 701 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/ZhangSM20.html)) 702 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/ZhangSM20.html?view=bibtex)) 703 | ([pdf](https://www.cs.cornell.edu/andru/papers/ufo/bidirectional-effects.pdf)) 704 | 705 | * **Designing with Static Capabilities and Effects: Use, Mention, and Invariants (Pearl)** (ECOOP 2020) 706 | by Colin S. Gordon 707 | ([doi](https://doi.org/10.4230/LIPIcs.ECOOP.2020.10)) 708 | ([dblp](https://dblp.uni-trier.de/rec/conf/ecoop/Gordon19.html)) 709 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ecoop/Gordon19.html?view=bibtex)) 710 | ([pdf](https://drops.dagstuhl.de/storage/00lipics/lipics-vol166-ecoop2020/LIPIcs.ECOOP.2020.10/LIPIcs.ECOOP.2020.10.pdf)) 711 | 712 | * **Lifting Sequential Effects to Control Operators** (ECOOP 2020) 713 | by Colin S. Gordon 714 | ([doi](https://doi.org/10.4230/LIPIcs.ECOOP.2020.23)) 715 | ([dblp](https://dblp.uni-trier.de/rec/conf/ecoop/Gordon19a.html)) 716 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ecoop/Gordon19a.html?view=bibtex)) 717 | ([pdf](https://drops.dagstuhl.de/storage/00lipics/lipics-vol166-ecoop2020/LIPIcs.ECOOP.2020.23/LIPIcs.ECOOP.2020.23.pdf)) 718 | 719 | * **Degrading Lists** (PPDP 2020) 720 | by Dylan McDermott, Maciej Piróg, and Tarmo Uustalu 721 | ([doi](https://doi.org/10.1145/3414080.3414084)) 722 | ([dblp](https://dblp.uni-trier.de/rec/conf/ppdp/McDermottPU20.html)) 723 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ppdp/McDermottPU20.html?view=bibtex)) 724 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3414080.3414084)) 725 | 726 | * **Wasm/k: delimited continuations for WebAssembly** (DLS 2020) 727 | by Donald Pinckney, Arjun Guha, and Yuriy Brun 728 | ([doi](https://doi.org/10.1145/3426422.3426978)) 729 | ([dblp](https://dblp.uni-trier.de/rec/conf/dls/PinckneyGB20.html)) 730 | ([bibtex](https://dblp.uni-trier.de/rec/conf/dls/PinckneyGB20.html?view=bibtex)) 731 | ([pdf](https://wasmk.github.io/FullVersion.pdf)) 732 | 733 | * **A Complete Normal-Form Bisimilarity for Algebraic Effects and Handlers** (FSCD 2020) 734 | by Dariusz Biernacki, Sergueï Lenglet, and Piotr Polesiuk 735 | ([doi](https://doi.org/10.4230/LIPIcs.FSCD.2020.7)) 736 | ([dblp](https://dblp.uni-trier.de/rec/conf/fscd/BiernackiLP20.html)) 737 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fscd/BiernackiLP20.html?view=bibtex)) 738 | ([pdf](https://drops.dagstuhl.de/opus/volltexte/2020/12329/pdf/LIPIcs-FSCD-2020-7.pdf)) 739 | 740 | * **A Reflection on Continuation-Composing Style** (FSCD 2020) 741 | by Dariusz Biernacki, Mateusz Pyzik, and Filip Sieczkowski 742 | ([doi](https://doi.org/10.4230/LIPIcs.FSCD.2020.18)) 743 | ([dblp](https://dblp.uni-trier.de/rec/conf/fscd/BiernackiPS20.html)) 744 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fscd/BiernackiPS20.html?view=bibtex)) 745 | ([pdf](https://drops.dagstuhl.de/opus/volltexte/2020/12340/pdf/LIPIcs-FSCD-2020-18.pdf)) 746 | 747 | * **Effect handlers in Haskell, evidently** (Haskell 2020) 748 | by Ningning Xie and Daan Leijen 749 | ([doi](https://doi.org/10.1145/3406088.3409022)) 750 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/XieL20.html)) 751 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/XieL20.html?view=bibtex)) 752 | ([pdf](https://www.microsoft.com/en-us/research/uploads/prod/2020/07/effev.pdf)) 753 | 754 | * **Effects as capabilities: effect handlers and lightweight effect polymorphism** (OOPSLA 2020) 755 | by Jonathan Immanuel Brachthäuser, Philipp Schuster, and Klaus Ostermann 756 | ([doi](https://doi.org/10.1145/3428194)) 757 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/BrachthauserSO20.html)) 758 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/BrachthauserSO20.html?view=bibtex)) 759 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3428194)) 760 | 761 | * **One-Shot Algebraic Effects as Coroutines** (TFP 2020) 762 | by Satoru Kawahara and Yukiyoshi Kameyama 763 | ([doi](https://doi.org/10.1007/978-3-030-57761-2_8)) 764 | ([dblp](https://dblp.uni-trier.de/rec/conf/sfp/KawaharaK20.html)) 765 | ([bibtex](https://dblp.uni-trier.de/rec/conf/sfp/KawaharaK20.html?view=bibtex)) 766 | ([pdf](https://www.cse.chalmers.se/~rjmh/tfp/proceedings/TFP_2020_paper_10.pdf)) 767 | 768 | * **Generalized monoidal effects and handlers** (JFP 2020) 769 | by Ruben P. Pieters, Exequiel Rivas, and Tom Schrijvers 770 | ([doi](https://doi.org/10.1017/S0956796820000106)) 771 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/PietersRS20.html)) 772 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/PietersRS20.html?view=bibtex)) 773 | ([pdf](https://rubenpieters.github.io/assets/papers/JFP20-handlers.pdf)) 774 | 775 | * **Signature restriction for polymorphic algebraic effects** (ICFP 2020) 776 | by Taro Sekiyama, Takeshi Tsukada, and Atsushi Igarashi 777 | ([doi](https://doi.org/10.1145/3408999)) 778 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/SekiyamaTI20.html)) 779 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/SekiyamaTI20.html?view=bibtex)) 780 | ([arxiv](https://arxiv.org/abs/2003.08138)) 781 | ([pdf](https://arxiv.org/pdf/2003.08138)) 782 | 783 | * **Effects for efficiency: asymptotic speedup with first-class control** (ICFP 2020) 784 | by Daniel Hillerström, Sam Lindley, and John Longley 785 | ([doi](https://doi.org/10.1145/3408982)) 786 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/HillerstromLL20.html)) 787 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/HillerstromLL20.html?view=bibtex)) 788 | ([arxiv](https://arxiv.org/abs/2007.00605)) 789 | ([pdf](https://arxiv.org/pdf/2007.00605)) 790 | 791 | * **Effect handlers, evidently** (ICFP 2020) 792 | by Ningning Xie, Jonathan Immanuel Brachthäuser, Daniel Hillerström, Philipp Schuster, and Daan Leijen 793 | ([doi](https://doi.org/10.1145/3408981)) 794 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/XieBHSL20.html)) 795 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/XieBHSL20.html?view=bibtex)) 796 | ([pdf](https://www.dhil.net/research/papers/effect_handlers_evidently-extended-icfp2020.pdf)) 797 | 798 | * **Compiling effect handlers in capability-passing style** (ICFP 2020) 799 | by Philipp Schuster, Jonathan Immanuel Brachthäuser, and Klaus Ostermann 800 | ([doi](https://doi.org/10.1145/3408975)) 801 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/SchusterBO20.html)) 802 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/SchusterBO20.html?view=bibtex)) 803 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3408975)) 804 | 805 | * **Effekt: Capability-passing style for type- and effect-safe, extensible effect handlers in Scala** (JFP 2020) 806 | by Jonathan Immanuel Brachthäuser, Philipp Schuster, and Klaus Ostermann 807 | ([doi](https://doi.org/10.1017/S0956796820000027)) 808 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/BrachthauserSO20.html)) 809 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/BrachthauserSO20.html?view=bibtex)) 810 | ([pdf](https://www.cambridge.org/core/services/aop-cambridge-core/content/view/A19680B18FB74AD95F8D83BC4B097D4F/S0956796820000027a.pdf/effekt_capabilitypassing_style_for_type_and_effectsafe_extensible_effect_handlers_in_scala.pdf)) 811 | 812 | * **Doo bee doo bee doo** (JFP 2020) 813 | by Lukas Convent, Sam Lindley, Conor McBride, and Craig McLaughlin 814 | ([doi](https://doi.org/10.1017/S0956796820000039)) 815 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/ConventLMM20.html)) 816 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/ConventLMM20.html?view=bibtex)) 817 | ([pdf](http://homepages.inf.ed.ac.uk/slindley/papers/frankly-jfp.pdf)) 818 | 819 | * **Effect handlers via generalised continuations** (JFP 2020) 820 | by Daniel Hillerström, Sam Lindley, and Robert Atkey 821 | ([doi](https://doi.org/10.1017/S0956796820000040)) 822 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/HillerstromLA20.html)) 823 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/HillerstromLA20.html?view=bibtex)) 824 | ([pdf](https://dhil.net/research/papers/generalised_continuations-jfp2020.pdf)) 825 | 826 | * **Runners in Action** (ESOP 2020) 827 | by Danel Ahman and Andrej Bauer 828 | ([doi](https://doi.org/10.1007/978-3-030-44914-8_2)) 829 | ([dblp](https://dblp.uni-trier.de/rec/conf/esop/AhmanB20.html)) 830 | ([bibtex](https://dblp.uni-trier.de/rec/conf/esop/AhmanB20.html?view=bibtex)) 831 | ([arxiv](https://arxiv.org/abs/1910.11629)) 832 | ([pdf](https://arxiv.org/pdf/1910.11629)) 833 | 834 | * **Interaction trees: representing recursive and impure programs in Coq** (POPL 2020) 835 | by Li-yao Xia, Yannick Zakowski, Paul He, Chung-Kil Hur, Gregory Malecha, Benjamin C. Pierce, and Steve Zdancewic 836 | ([doi](https://doi.org/10.1145/3371119)) 837 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/XiaZHHMPZ20.html)) 838 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/XiaZHHMPZ20.html?view=bibtex)) 839 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3371119?download=true)) 840 | 841 | * **Binders by day, labels by night: effect instances via lexically scoped handlers** (POPL 2020) 842 | by Dariusz Biernacki, Maciej Piróg, Piotr Polesiuk, and Filip Sieczkowski 843 | ([doi](https://doi.org/10.1145/3371116)) 844 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/BiernackiPPS20.html)) 845 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/BiernackiPPS20.html?view=bibtex)) 846 | ([pdf](https://maciejpirog.github.io/papers/binders-labels.pdf)) 847 | 848 | * **Combining predicate transformer semantics for effects: a case study in parsing regular languages** (MSFP 2020) 849 | by Anne Baanen and Wouter Swierstra 850 | ([doi](https://doi.org/10.4204/EPTCS.317.3)) 851 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-2005-00197.html)) 852 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-2005-00197.html?view=bibtex)) 853 | ([arxiv](https://arxiv.org/abs/2005.00197)) 854 | ([pdf](https://arxiv.org/pdf/2005.00197)) 855 | 856 | * **From Equations to Distinctions: Two Interpretations of Effectful Computations** (MSFP 2020) 857 | by Niels F. W. Voorneveld 858 | ([doi](https://doi.org/10.4204/EPTCS.317.1)) 859 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-2005-00196.html)) 860 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-2005-00196.html?view=bibtex)) 861 | ([arxiv](https://arxiv.org/abs/2005.00196)) 862 | ([pdf](https://arxiv.org/pdf/2005.00196)) 863 | 864 | * **Unifying graded and parameterised monads** (MSFP 2020) 865 | by Dominic Orchard, Philip Wadler, and Harley Eades III 866 | ([doi](https://doi.org/10.4204/EPTCS.317.2)) 867 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-2001-10274.html)) 868 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-2001-10274.html?view=bibtex)) 869 | ([arxiv](https://arxiv.org/abs/2001.10274)) 870 | ([pdf](https://arxiv.org/pdf/2001.10274)) 871 | 872 | * **Local algebraic effect theories** (JFP 2020) 873 | by Žiga Lukšič and Matija Pretnar 874 | ([doi](https://doi.org/10.1017/S0956796819000212)) 875 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/LuksicP20.html)) 876 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/LuksicP20.html?view=bibtex)) 877 | ([arxiv](https://arxiv.org/abs/2005.13654)) 878 | ([pdf](https://arxiv.org/pdf/2005.13654)) 879 | 880 | * **Explicit effect subtyping** (JFP 2020) 881 | by Georgios Karachalias, Matija Pretnar, Amr Hany Saleh, Stien Vanderhallen, and Tom Schrijvers 882 | ([doi](https://doi.org/10.1017/S0956796820000131)) 883 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/KarachaliasPSVS20.html)) 884 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/KarachaliasPSVS20.html?view=bibtex)) 885 | ([arxiv](https://arxiv.org/abs/2005.13814)) 886 | ([pdf](https://arxiv.org/pdf/2005.13814)) 887 | 888 | * **The fire triangle: how to mix substitution, dependent elimination, and effects** (POPL 2020) 889 | by Pierre-Marie Pédrot and Nicolas Tabareau 890 | ([doi](https://doi.org/10.1145/3371126)) 891 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/PedrotT20.html)) 892 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/PedrotT20.html?view=bibtex)) 893 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3371126)) 894 | 895 | ### 2019 896 | 897 | * **A Sound and Complete Logic for Algebraic Effects** (FoSSaCS 2019) 898 | by Cristina Matache and Sam Staton 899 | ([doi](https://doi.org/10.1007/978-3-030-17127-8_22)) 900 | ([dblp](https://dblp.uni-trier.de/rec/conf/fossacs/MatacheS19.html)) 901 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fossacs/MatacheS19.html?view=bibtex)) 902 | ([pdf](http://www.cs.ox.ac.uk/people/samuel.staton/papers/fossacs-2019.pdf)) 903 | 904 | * **On the expressive power of user-defined effects: Effect handlers, monadic reflection, delimited control** (JFP, ICFP 2017 special issue) 905 | by Yannick Forster, Ohad Kammar, Sam Lindley, and Matija Pretnar 906 | ([doi](https://doi.org/10.1017/S0956796819000121)) 907 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/0002KLP19.html)) 908 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/0002KLP19.html?view=bibtex)) 909 | ([pdf](http://homepages.inf.ed.ac.uk/slindley/papers/effmondel-jfp.pdf)) 910 | 911 | * **Dijkstra monads for all** (ICFP 2019) 912 | by Kenji Maillard, Danel Ahman, Robert Atkey, Guido Martínez, Cătălin Hriţcu, Exequiel Rivas, and Éric Tanter 913 | ([doi](https://doi.org/10.1145/3341708)) 914 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/MaillardAAMHRT19.html)) 915 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/MaillardAAMHRT19.html?view=bibtex)) 916 | ([arxiv](https://arxiv.org/abs/1903.01237)) 917 | ([pdf](https://arxiv.org/pdf/1903.01237)) 918 | 919 | * **A predicate transformer semantics for effects (functional pearl)** (ICFP 2019) 920 | by Wouter Swierstra and Anne Baanen 921 | ([doi](https://doi.org/10.1145/3341707)) 922 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/SwierstraB19.html)) 923 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/SwierstraB19.html?view=bibtex)) 924 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3341707?download=true)) 925 | 926 | * **Monad transformers and modular algebraic effects: what binds them together** (Haskell 2019) 927 | by Tom Schrijvers, Maciej Piróg, Nicolas Wu, and Mauro Jaskelioff 928 | ([doi](https://doi.org/10.1145/3331545.3342595)) 929 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/SchrijversPWJ19.html)) 930 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/SchrijversPWJ19.html?view=bibtex)) 931 | ([pdf](https://maciejpirog.github.io/papers/what-binds-them-together.pdf)) 932 | 933 | * **A Hierarchy of Monadic Effects for Program Verification Using Equational Reasoning** (MPC 2019) 934 | by Reynald Affeldt, David Nowak, and Takafumi Saikawa 935 | ([doi](https://doi.org/10.1007/978-3-030-33636-3_9)) 936 | ([dblp](https://dblp.uni-trier.de/rec/conf/mpc/AffeldtNS19.html)) 937 | ([bibtex](https://dblp.uni-trier.de/rec/conf/mpc/AffeldtNS19.html?view=bibtex)) 938 | ([pdf](https://hal.science/hal-02359796v1/preview/monae.pdf)) 939 | ([GitHub](https://github.com/affeldt-aist/monae)) 940 | 941 | * **Handling Local State with Global State** (MPC 2019) 942 | by Koen Pauwels, Tom Schrijvers, and Shin-Cheng Mu 943 | ([doi](https://doi.org/10.1007/978-3-030-33636-3_2)) 944 | ([dblp](https://dblp.uni-trier.de/rec/conf/mpc/PauwelsSM19.html)) 945 | ([bibtex](https://dblp.uni-trier.de/rec/conf/mpc/PauwelsSM19.html?view=bibtex)) 946 | ([pdf](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/mpc2019.pdf)) 947 | 948 | * **Bisimulations for Delimited-Control Operators** (LMCS 2019) 949 | by Dariusz Biernacki, Sergueï Lenglet, and Piotr Polesiuk 950 | ([doi](https://doi.org/10.23638/LMCS-15(2:18)2019)) 951 | ([dblp](https://dblp.uni-trier.de/rec/journals/lmcs/BiernackiLP19a.html)) 952 | ([bibtex](https://dblp.uni-trier.de/rec/journals/lmcs/BiernackiLP19a.html?view=bibtex)) 953 | ([pdf](https://lmcs.episciences.org/5508/pdf)) 954 | 955 | * **Typed Equivalence of Effect Handlers and Delimited Control** (FSCD 2019) 956 | by Maciej Piróg, Piotr Polesiuk, and Filip Sieczkowski 957 | ([doi](https://doi.org/10.4230/LIPIcs.FSCD.2019.30)) 958 | ([dblp](https://dblp.uni-trier.de/rec/conf/rta/PirogPS19.html)) 959 | ([bibtex](https://dblp.uni-trier.de/rec/conf/rta/PirogPS19.html?view=bibtex)) 960 | ([pdf](https://maciejpirog.github.io/papers/typed-equivalence-fscd2019.pdf)) 961 | 962 | * **Handling Polymorphic Algebraic Effects** (ESOP 2019) 963 | by Taro Sekiyama and Atsushi Igarashi 964 | ([doi](https://doi.org/10.1007/978-3-030-17184-1_13)) 965 | ([dblp](https://dblp.uni-trier.de/rec/conf/esop/SekiyamaI19.html)) 966 | ([bibtex](https://dblp.uni-trier.de/rec/conf/esop/SekiyamaI19.html?view=bibtex)) 967 | ([arxiv](https://arxiv.org/abs/1811.07332)) 968 | ([pdf](https://arxiv.org/pdf/1811.07332)) 969 | 970 | * **Extended Call-by-Push-Value: Reasoning About Effectful Programs and Evaluation Order** (ESOP 2019) 971 | by Dylan McDermott and Alan Mycroft 972 | ([doi](https://doi.org/10.1007/978-3-030-17184-1_9)) 973 | ([dblp](https://dblp.uni-trier.de/rec/conf/esop/McDermottM19.html)) 974 | ([bibtex](https://dblp.uni-trier.de/rec/conf/esop/McDermottM19.html?view=bibtex)) 975 | ([pdf](https://www.cl.cam.ac.uk/~dm606/extended-call-by-push-value.pdf)) 976 | 977 | * **Abstracting algebraic effects** (POPL 2019) 978 | by Dariusz Biernacki, Maciej Piróg, Piotr Polesiuk, and Filip Sieczkowski 979 | ([doi](https://doi.org/10.1145/3290319)) 980 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/BiernackiPPS19.html)) 981 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/BiernackiPPS19.html?view=bibtex)) 982 | ([pdf](https://maciejpirog.github.io/papers/biernacki-al-popl19.pdf)) 983 | 984 | * **Abstraction-safe effect handlers via tunneling** (POPL 2019) 985 | by Yizhou Zhang and Andrew C. Myers 986 | ([doi](https://doi.org/10.1145/3290318)) 987 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/ZhangM19.html)) 988 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/ZhangM19.html?view=bibtex)) 989 | ([technical report](https://ecommons.cornell.edu/handle/1813/60202)) 990 | 991 | * **Behavioural Equivalence via Modalities for Algebraic Effects** (TOPLAS 2019) 992 | by Alex Simpson and Niels F. W. Voorneveld 993 | ([doi](https://doi.org/10.1145/3363518)) 994 | ([dblp](https://dblp.uni-trier.de/rec/journals/toplas/SimpsonV20.html)) 995 | ([bibtex](https://dblp.uni-trier.de/rec/journals/toplas/SimpsonV20.html?view=bibtex)) 996 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3363518)) 997 | 998 | ### 2018 999 | 1000 | * **Behavioural Equivalence via Modalities for Algebraic Effects** (ESOP 2018) 1001 | by Alex Simpson and Niels F. W. Voorneveld 1002 | ([doi](https://doi.org/10.1007/978-3-319-89884-1_11)) 1003 | ([dblp](https://dblp.uni-trier.de/rec/conf/esop/SimpsonV18.html)) 1004 | ([bibtex](https://dblp.uni-trier.de/rec/conf/esop/SimpsonV18.html?view=bibtex)) 1005 | ([pdf](https://link.springer.com/content/pdf/10.1007%2F978-3-319-89884-1.pdf)) 1006 | 1007 | * **Call-by-need effects via coeffects** (Open Computer Science 2018) 1008 | by Dylan McDermott and Alan Mycroft 1009 | ([doi](https://doi.org/10.1515/comp-2018-0009)) 1010 | ([dblp](https://dblp.uni-trier.de/rec/journals/cejcs/McDermottM18.html)) 1011 | ([bibtex](https://dblp.uni-trier.de/rec/journals/cejcs/McDermottM18.html?view=bibtex)) 1012 | ([pdf](https://www.cl.cam.ac.uk/~dm606/call-by-need-effects.pdf)) 1013 | 1014 | * **Pyro: Deep Universal Probabilistic Programming** (2018) 1015 | by Eli Bingham, Jonathan P. Chen, Martin Jankowiak, Fritz Obermeyer, Neeraj Pradhan, Theofanis Karaletsos, Rohit Singh, Paul A. Szerlip, Paul Horsfall, and Noah D. Goodman 1016 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-1810-09538.html)) 1017 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-1810-09538.html?view=bibtex)) 1018 | ([arxiv](https://arxiv.org/abs/1810.09538)) 1019 | ([pdf](https://arxiv.org/pdf/1810.09538)) 1020 | 1021 | * **Automatic Reparameterisation in Probabilistic Programming** (AABI 2018) 1022 | by Maria I. Gorinova, Dave Moore, and Matthew D. Hoffman 1023 | 1024 | * **Effect Handling for Composable Program Transformations in Edward2** (PROBPROG 2018) 1025 | by Dave Moore and Maria I. Gorinova 1026 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-1811-06150.html)) 1027 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-1811-06150.html?view=bibtex)) 1028 | ([arxiv](https://arxiv.org/abs/1811.06150)) 1029 | ([pdf](https://arxiv.org/pdf/1811.06150)) 1030 | 1031 | * **Factorisation Systems for Logical Relations and Monadic Lifting in Type-and-effect System Semantics** (MFPS 2018) 1032 | by Ohad Kammar and Dylan McDermott 1033 | ([doi](https://doi.org/10.1016/j.entcs.2018.11.012)) 1034 | ([dblp](https://dblp.uni-trier.de/rec/journals/entcs/KammarM18.html)) 1035 | ([bibtex](https://dblp.uni-trier.de/rec/journals/entcs/KammarM18.html?view=bibtex)) 1036 | 1037 | * **Functional programming for modular Bayesian inference** (ICFP 2018) 1038 | by Adam Ścibior, Ohad Kammar, and Zoubin Ghahramani 1039 | ([doi](https://doi.org/10.1145/3236778)) 1040 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/ScibiorKG18.html)) 1041 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/ScibiorKG18.html?view=bibtex)) 1042 | ([pdf](https://api.repository.cam.ac.uk/server/api/core/bitstreams/36a3c9ad-9633-4e69-a96f-fd76d1d49ccd/content)) 1043 | 1044 | * **JEff: objects for effect** (Onward 2018) 1045 | by Pablo Inostroza and Tijs van der Storm 1046 | ([doi](https://doi.org/10.1145/3276954.3276955)) 1047 | ([dblp](https://dblp.uni-trier.de/rec/conf/oopsla/InostrozaS18.html)) 1048 | ([bibtex](https://dblp.uni-trier.de/rec/conf/oopsla/InostrozaS18.html?view=bibtex)) 1049 | ([pdf](https://homepages.cwi.nl/~storm/publications/jeff.pdf)) 1050 | 1051 | * **Effect handlers for the masses** (OOPSLA 2018) 1052 | by Jonathan Immanuel Brachthäuser, Philipp Schuster, and Klaus Ostermann 1053 | ([doi](https://doi.org/10.1145/3276481)) 1054 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/BrachthauserSO18.html)) 1055 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/BrachthauserSO18.html?view=bibtex)) 1056 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/3276481)) 1057 | 1058 | * **Abstract nonsense** (FARM 2018) 1059 | by Junia Gonçalves 1060 | ([doi](https://doi.org/10.1145/3242903.3242908)) 1061 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/Goncalves18.html)) 1062 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/Goncalves18.html?view=bibtex)) 1063 | 1064 | * **Syntax and Semantics for Operations with Scopes** (LICS 2018) 1065 | by Maciej Piróg, Tom Schrijvers, Nicolas Wu, and Mauro Jaskelioff 1066 | ([doi](https://doi.org/10.1145/3209108.3209166)) 1067 | ([dblp](https://dblp.uni-trier.de/rec/conf/lics/PirogSWJ18.html)) 1068 | ([bibtex](https://dblp.uni-trier.de/rec/conf/lics/PirogSWJ18.html?view=bibtex)) 1069 | ([pdf](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/lics2018.pdf)) 1070 | 1071 | * **First class dynamic effect handlers: or, polymorphic heaps with dynamic effect handlers** (TyDe 2018) 1072 | by Daan Leijen 1073 | ([doi](https://doi.org/10.1145/3240719.3241789)) 1074 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/Leijen18.html)) 1075 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/Leijen18.html?view=bibtex)) 1076 | 1077 | * **Algebraic Effect Handlers with Resources and Deep Finalization** (MSR technical report) 1078 | by Daan Leijen 1079 | ([pdf](https://www.microsoft.com/en-us/research/uploads/prod/2018/04/resource-v1.pdf)) 1080 | 1081 | * **Shallow Effect Handlers** (APLAS 2018) 1082 | by Daniel Hillerström and Sam Lindley 1083 | ([doi](https://doi.org/10.1007/978-3-030-02768-1_22)) 1084 | ([dblp](https://dblp.uni-trier.de/rec/conf/aplas/HillerstromL18.html)) 1085 | ([bibtex](https://dblp.uni-trier.de/rec/conf/aplas/HillerstromL18.html?view=bibtex)) 1086 | ([pdf](http://homepages.inf.ed.ac.uk/slindley/papers/shallow-extended.pdf)) 1087 | 1088 | * **Versatile event correlation with algebraic effects** (ICFP 2018) 1089 | by Oliver Bračevac, Nada Amin, Guido Salvaneschi, Sebastian Erdweg, Patrick Eugster, and Mira Mezini 1090 | ([doi](https://doi.org/10.1145/3236762)) 1091 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/BracevacASEEM18.html)) 1092 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/BracevacASEEM18.html?view=bibtex)) 1093 | ([pdf](https://programming-group.com/assets/pdf/papers/2018-Versatile-event-correlation-with-algebraic-effects.pdf)) 1094 | 1095 | * **Modular Verification of Programs with Effects and Effect Handlers in Coq** (FM 2018) 1096 | by Thomas Letan, Yann Régis-Gianas, Pierre Chifflier, and Guillaume Hiet 1097 | ([doi](https://doi.org/10.1007/978-3-319-95582-7_20)) 1098 | ([dblp](https://dblp.uni-trier.de/rec/conf/fm/LetanRCH18.html)) 1099 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fm/LetanRCH18.html?view=bibtex)) 1100 | ([metadata](https://hal.inria.fr/hal-01799712)) 1101 | ([pdf](https://hal.inria.fr/hal-01799712/document)) 1102 | 1103 | * **Explicit Effect Subtyping** (ESOP 2018) 1104 | by Amr Hany Saleh, Georgios Karachalias, Matija Pretnar, and Tom Schrijvers 1105 | ([doi](https://doi.org/10.1007/978-3-319-89884-1_12)) 1106 | ([dblp](https://dblp.uni-trier.de/rec/conf/esop/SalehKPS18.html)) 1107 | ([bibtex](https://dblp.uni-trier.de/rec/conf/esop/SalehKPS18.html?view=bibtex)) 1108 | ([pdf](https://lirias.kuleuven.be/bitstream/123456789/618119/1/esop18-final71.pdf)) 1109 | ([pdf with appendix](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/esop2018.pdf)) 1110 | ([technical report/extended version](https://lirias.kuleuven.be/bitstream/123456789/616205/1/CW711.pdf)) 1111 | 1112 | * **Handle with care: relational interpretation of algebraic effects and handlers** (POPL 2018) 1113 | by Dariusz Biernacki, Maciej Piróg, Piotr Polesiuk, and Filip Sieczkowski 1114 | ([doi](https://doi.org/10.1145/3158096)) 1115 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/BiernackiPPS18.html)) 1116 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/BiernackiPPS18.html?view=bibtex)) 1117 | ([pdf](https://bitbucket.org/pl-uwr/aleff-logrel/downloads/popl18e.pdf)) 1118 | ([Coq formalisation](https://bitbucket.org/pl-uwr/aleff-logrel)) 1119 | 1120 | * **Handling fibred algebraic effects** (POPL 2018) 1121 | by Danel Ahman 1122 | ([doi](https://doi.org/10.1145/3158095)) 1123 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/Ahman18.html)) 1124 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/Ahman18.html?view=bibtex)) 1125 | ([pdf](https://danelahman.github.io/papers/popl18.pdf)) 1126 | 1127 | ### 2017 1128 | 1129 | * **Staged generic programming** (ICFP 2017) 1130 | by Jeremy Yallop 1131 | ([doi](https://doi.org/10.1145/3110273)) 1132 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/Yallop17.html)) 1133 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/Yallop17.html?view=bibtex)) 1134 | ([pdf](https://www.cl.cam.ac.uk/~jdy22/papers/staged-generic-programming.pdf)) 1135 | 1136 | * **Concurrent System Programming with Effect Handlers** (TFP 2017) 1137 | by Stephen Dolan, Spiros Eliopoulos, Daniel Hillerström, Anil Madhavapeddy, K. C. Sivaramakrishnan, and Leo White 1138 | ([doi](https://doi.org/10.1007/978-3-319-89719-6_6)) 1139 | ([dblp](https://dblp.uni-trier.de/rec/conf/sfp/DolanEHMSW17.html)) 1140 | ([bibtex](https://dblp.uni-trier.de/rec/conf/sfp/DolanEHMSW17.html?view=bibtex)) 1141 | ([pdf](http://kcsrk.info/papers/system_effects_feb_18.pdf)) 1142 | 1143 | * **Handlers for Non-Monadic Computations** (IFL 2017) 1144 | by Ruben P. Pieters, Tom Schrijvers, and Exequiel Rivas 1145 | ([doi](https://doi.org/10.1145/3205368.3205372)) 1146 | ([dblp](https://dblp.uni-trier.de/rec/conf/ifl/PietersSR17.html)) 1147 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ifl/PietersSR17.html?view=bibtex)) 1148 | ([pdf](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/ifl2017_post.pdf)) 1149 | ([technical report/extended version](https://lirias.kuleuven.be/bitstream/123456789/617988/1/CW713.pdf)) 1150 | 1151 | * **Effekt: extensible algebraic effects in Scala (short paper)** (Scala 2017) 1152 | by Jonathan Immanuel Brachthäuser and Philipp Schuster 1153 | ([doi](https://doi.org/10.1145/3136000.3136007)) 1154 | ([dblp](https://dblp.uni-trier.de/rec/conf/scala/BrachthauserS17.html)) 1155 | ([bibtex](https://dblp.uni-trier.de/rec/conf/scala/BrachthauserS17.html?view=bibtex)) 1156 | 1157 | * **Efficient Compilation of Algebraic Effects and Handlers** (2017) 1158 | by Matija Pretnar, Amr Hany Saleh, Axel Faes, and Tom Schrijvers 1159 | ([technical report](http://www.cs.kuleuven.be/publicaties/rapporten/cw/CW708.pdf)) 1160 | 1161 | * **Structured asynchrony with algebraic effects** (TyDe 2017) 1162 | by Daan Leijen 1163 | ([doi](https://doi.org/10.1145/3122975.3122977)) 1164 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/Leijen17.html)) 1165 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/Leijen17.html?view=bibtex)) 1166 | ([OpenTOC](http://www.sigplan.org/OpenTOC/tyde17.html)) 1167 | ([technical report](https://www.microsoft.com/en-us/research/wp-content/uploads/2017/05/asynceffects-msr-tr-2017-21.pdf)) 1168 | 1169 | * **Implementing Algebraic Effects in C - "Monads for Free in C"** (APLAS 2017) 1170 | by Daan Leijen 1171 | ([doi](https://doi.org/10.1007/978-3-319-71237-6_17)) 1172 | ([dblp](https://dblp.uni-trier.de/rec/conf/aplas/Leijen17.html)) 1173 | ([bibtex](https://dblp.uni-trier.de/rec/conf/aplas/Leijen17.html?view=bibtex)) 1174 | ([technical report](https://www.microsoft.com/en-us/research/wp-content/uploads/2017/06/algeff-in-c-tr-v2.pdf)) 1175 | ([GitHub](https://github.com/koka-lang/libhandler)) 1176 | 1177 | * **Continuation Passing Style for Effect Handlers** (FSCD 2017) 1178 | by Daniel Hillerström, Sam Lindley, Robert Atkey, and K. C. Sivaramakrishnan 1179 | ([doi](https://doi.org/10.4230/LIPIcs.FSCD.2017.18)) 1180 | ([dblp](https://dblp.uni-trier.de/rec/conf/rta/HillerstromLAS17.html)) 1181 | ([bibtex](https://dblp.uni-trier.de/rec/conf/rta/HillerstromLAS17.html?view=bibtex)) 1182 | ([pdf](http://homepages.inf.ed.ac.uk/slindley/papers/handlers-cps.pdf)) 1183 | 1184 | * **On the expressive power of user-defined effects: effect handlers, monadic reflection, delimited control** (ICFP 2017) 1185 | by Yannick Forster, Ohad Kammar, Sam Lindley, and Matija Pretnar 1186 | ([doi](https://doi.org/10.1145/3110257)) 1187 | ([dblp](https://dblp.uni-trier.de/rec/journals/pacmpl/0002KLP17.html)) 1188 | ([bibtex](https://dblp.uni-trier.de/rec/journals/pacmpl/0002KLP17.html?view=bibtex)) 1189 | ([arxiv](https://arxiv.org/abs/1610.09161)) 1190 | ([pdf](https://arxiv.org/pdf/1610.09161)) 1191 | 1192 | * **A Generic Approach to Flow-Sensitive Polymorphic Effects** (ECOOP 2017) 1193 | by Colin S. Gordon 1194 | ([doi](https://doi.org/10.4230/LIPIcs.ECOOP.2017.13)) 1195 | ([dblp](https://dblp.uni-trier.de/rec/conf/ecoop/Gordon17.html)) 1196 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ecoop/Gordon17.html?view=bibtex)) 1197 | ([pdf](https://drops.dagstuhl.de/storage/00lipics/lipics-vol074-ecoop2017/LIPIcs.ECOOP.2017.13/LIPIcs.ECOOP.2017.13.pdf)) 1198 | 1199 | * **Do be do be do** (POPL 2017) 1200 | by Sam Lindley, Conor McBride, and Craig McLaughlin 1201 | ([doi](https://doi.org/10.1145/3009837.3009897)) 1202 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/LindleyMM17.html)) 1203 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/LindleyMM17.html?view=bibtex)) 1204 | ([arxiv](https://arxiv.org/abs/1611.09259)) 1205 | ([pdf](https://arxiv.org/pdf/1611.09259)) 1206 | 1207 | * **Type directed compilation of row-typed algebraic effects** (POPL 2017) 1208 | by Daan Leijen 1209 | ([doi](https://doi.org/10.1145/3009837.3009872)) 1210 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/Leijen17.html)) 1211 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/Leijen17.html?view=bibtex)) 1212 | 1213 | * **No value restriction is needed for algebraic effects and handlers** (J. Funct. Program. 2017) 1214 | by Ohad Kammar and Matija Pretnar 1215 | ([doi](https://doi.org/10.1017/S0956796816000320)) 1216 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/KammarP17.html)) 1217 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/KammarP17.html?view=bibtex)) 1218 | ([arxiv](https://arxiv.org/abs/1605.06938)) 1219 | ([pdf](https://arxiv.org/pdf/1605.06938)) 1220 | 1221 | ### 2016 1222 | 1223 | * **Accepting blame for safe tunneled exceptions** (PLDI 2016) 1224 | by Yizhou Zhang, Guido Salvaneschi, Quinn Beightol, Barbara Liskov, and Andrew C. Myers 1225 | ([doi](https://doi.org/10.1145/2908080.2908086)) 1226 | ([dblp](https://dblp.org/rec/conf/pldi/ZhangSBLM16.html)) 1227 | ([bibtex](https://dblp.org/rec/conf/pldi/ZhangSBLM16.html?view=bibtex)) 1228 | ([pdf](https://dl.acm.org/doi/pdf/10.1145/2908080.2908086)) 1229 | 1230 | * **Combining effects and coeffects via grading** (ICFP 2016) 1231 | by Marco Gaboardi, Shin-ya Katsumata, Dominic A. Orchard, Flavien Breuvart, and Tarmo Uustalu 1232 | ([doi](https://doi.org/10.1145/2951913.2951939)) 1233 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/GaboardiKOBU16.html)) 1234 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/GaboardiKOBU16.html?view=bibtex)) 1235 | ([pdf](https://www.cs.kent.ac.uk/people/staff/dao7/publ/combining-effects-and-coeffects-icfp16.pdf)) 1236 | 1237 | * **Effects as sessions, sessions as effects** (POPL 2016) 1238 | by Dominic A. Orchard and Nobuko Yoshida 1239 | ([doi](https://doi.org/10.1145/2837614.2837634)) 1240 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/OrchardY16.html)) 1241 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/OrchardY16.html?view=bibtex)) 1242 | ([pdf](https://www.cs.kent.ac.uk/people/staff/dao7/publ/popl16-orchard-yoshida.pdf)) 1243 | 1244 | * **Effect Systems Revisited - Control-Flow Algebra and Semantics** (Semantics, Logics, and Calculi 2016) 1245 | by Alan Mycroft, Dominic A. Orchard, and Tomas Petricek 1246 | ([doi](https://doi.org/10.1007/978-3-319-27810-0_1)) 1247 | ([dblp](https://dblp.uni-trier.de/rec/conf/birthday/MycroftOP16.html)) 1248 | ([bibtex](https://dblp.uni-trier.de/rec/conf/birthday/MycroftOP16.html?view=bibtex)) 1249 | ([pdf](https://www.cs.kent.ac.uk/people/staff/dao7/publ/effects-revisited.pdf)) 1250 | 1251 | * **Efficient algebraic effect handlers for Prolog** (TPLP/ICLP 2016) 1252 | by Amr Hany Saleh and Tom Schrijvers 1253 | ([doi](https://doi.org/10.1017/S147106841600034X)) 1254 | ([dblp](https://dblp.uni-trier.de/rec/journals/tplp/SalehS16.html)) 1255 | ([bibtex](https://dblp.uni-trier.de/rec/journals/tplp/SalehS16.html?view=bibtex)) 1256 | ([pdf](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/iclp2016a.pdf)) 1257 | 1258 | * **Eff Directly in OCaml** (ML Workshop 2016) 1259 | by Oleg Kiselyov and K. C. Sivaramakrishnan 1260 | ([doi](https://doi.org/10.4204/EPTCS.285.2)) 1261 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/abs-1812-11664.html)) 1262 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/abs-1812-11664.html?view=bibtex)) 1263 | ([pdf](http://kcsrk.info/papers/caml-eff17.pdf)) 1264 | ([extended abstract](http://kcsrk.info/papers/eff_ocaml_ml16.pdf)) 1265 | 1266 | * **Compiling Links Effect Handlers to the OCaml Backend** (ML Workshop 2016) 1267 | by Daniel Hillerström, Sam Lindley, and KC Sivaramakrishnan 1268 | ([pdf](http://kcsrk.info/papers/links_ocaml_ml16.pdf)) 1269 | 1270 | * **Liberating effects with rows and handlers** (TyDe 2016) 1271 | by Daniel Hillerström and Sam Lindley 1272 | ([doi](https://doi.org/10.1145/2976022.2976033)) 1273 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/HillerstromL16.html)) 1274 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/HillerstromL16.html?view=bibtex)) 1275 | ([pdf](http://homepages.inf.ed.ac.uk/slindley/papers/links-effect.pdf)) 1276 | 1277 | * **Dependent Types and Fibred Computational Effects** (FoSSaCS 2016) 1278 | by Danel Ahman, Neil Ghani, and Gordon D. Plotkin 1279 | ([doi](https://doi.org/10.1007/978-3-662-49630-5_3)) 1280 | ([dblp](https://dblp.uni-trier.de/rec/conf/fossacs/AhmanGP16.html)) 1281 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fossacs/AhmanGP16.html?view=bibtex)) 1282 | ([pdf](https://danelahman.github.io/papers/fossacs16.pdf)) 1283 | 1284 | * **From Monads to Effects and Back** (PADL 2016) 1285 | by Niki Vazou and Daan Leijen 1286 | ([doi](https://doi.org/10.1007/978-3-319-28228-2_11)) 1287 | ([dblp](https://dblp.uni-trier.de/rec/conf/padl/VazouL16.html)) 1288 | ([bibtex](https://dblp.uni-trier.de/rec/conf/padl/VazouL16.html?view=bibtex)) 1289 | ([pdf](http://goto.ucsd.edu/~nvazou/koka/padl16.pdf)) 1290 | 1291 | ### 2015 1292 | 1293 | * **Algebraic Effects, Linearity, and Quantum Programming Languages** (POPL 2015) 1294 | by Sam Staton 1295 | ([doi](https://doi.org/10.1145/2676726.2676999)) 1296 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/Staton15.html)) 1297 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/Staton15.html?view=bibtex)) 1298 | ([pdf](http://www.cs.ox.ac.uk/people/samuel.staton/papers/popl2015.pdf)) 1299 | 1300 | * **Effective Concurrency with Algebraic Effects** (OCaml Workshop 2015) 1301 | by Stephen Dolan, Leo White, KC Sivaramakrishnan, Jeremy Yallop and Anil Madhavapeddy 1302 | ([pdf](http://kcsrk.info/papers/effects_ocaml15.pdf)) 1303 | 1304 | * **Fixing non-determinism** (IFL 2015) 1305 | by Alexander Vandenbroucke, Tom Schrijvers, and Frank Piessens 1306 | ([doi](https://doi.org/10.1145/2897336.2897342)) 1307 | ([dblp](https://dblp.uni-trier.de/rec/conf/ifl/VandenbrouckeSP15.html)) 1308 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ifl/VandenbrouckeSP15.html?view=bibtex)) 1309 | ([pdf](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/ifl2015_post.pdf)) 1310 | 1311 | * **Customizable gradual polymorphic effects for Scala** (OOPSLA 2015) 1312 | by Matías Toro and Éric Tanter 1313 | ([doi](https://doi.org/10.1145/2814270.2814315)) 1314 | ([dblp](https://dblp.uni-trier.de/rec/conf/oopsla/ToroT15.html)) 1315 | ([bibtex](https://dblp.uni-trier.de/rec/conf/oopsla/ToroT15.html?view=bibtex)) 1316 | 1317 | * **Freer monads, more extensible effects** (Haskell 2015) 1318 | by Oleg Kiselyov and Hiromi Ishii 1319 | ([doi](https://doi.org/10.1145/2804302.2804319)) 1320 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/KiselyovI15.html)) 1321 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/KiselyovI15.html?view=bibtex)) 1322 | ([pdf](http://okmij.org/ftp/Haskell/extensible/more.pdf)) 1323 | 1324 | * **Programming with algebraic effects and handlers** (JLAMP 2015) 1325 | by Andrej Bauer and Matija Pretnar 1326 | ([doi](https://doi.org/10.1016/j.jlamp.2014.02.001)) 1327 | ([dblp](https://dblp.uni-trier.de/rec/journals/jlp/BauerP15.html)) 1328 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jlp/BauerP15.html?view=bibtex)) 1329 | ([pdf](http://math.andrej.com/wp-content/uploads/2012/03/eff.pdf)) 1330 | 1331 | * **Fusion for Free - Efficient Algebraic Effect Handlers** (MPC 2015) 1332 | by Nicolas Wu and Tom Schrijvers 1333 | ([doi](https://doi.org/10.1007/978-3-319-19797-5_15)) 1334 | ([dblp](https://dblp.uni-trier.de/rec/conf/mpc/WuS15.html)) 1335 | ([bibtex](https://dblp.uni-trier.de/rec/conf/mpc/WuS15.html?view=bibtex)) 1336 | ([pdf](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/mpc2015.pdf)) 1337 | 1338 | * **Interleaving data and effects** (JFP 2015) 1339 | by Robert Atkey and Patricia Johann 1340 | ([doi](https://doi.org/10.1017/S0956796815000209)) 1341 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/AtkeyJ15.html)) 1342 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/AtkeyJ15.html?view=bibtex)) 1343 | ([pdf](http://bentnib.org/interleaving.pdf)) 1344 | 1345 | * **Stateful Runners of Effectful Computations** (MFPS 2015) 1346 | by Tarmo Uustalu 1347 | ([doi](https://doi.org/10.1016/j.entcs.2015.12.024)) 1348 | ([dblp](https://dblp.uni-trier.de/rec/journals/entcs/Uustalu15.html)) 1349 | ([bibtex](https://dblp.uni-trier.de/rec/journals/entcs/Uustalu15.html?view=bibtex)) 1350 | 1351 | ### 2014 1352 | 1353 | * **Algebraic Effects and Handlers in Natural Language Interpretation** (NLCS 2014) 1354 | by Jiří Maršík and Maxime Amblard 1355 | ([pdf](https://hal.inria.fr/hal-01079206/document)) 1356 | 1357 | * **Algebraic effects and effect handlers for idioms and arrows** (WGP 2014) 1358 | by Sam Lindley 1359 | ([doi](https://doi.org/10.1145/2633628.2633636)) 1360 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/Lindley14.html)) 1361 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/Lindley14.html?view=bibtex)) 1362 | ([pdf](http://homepages.inf.ed.ac.uk/slindley/papers/aeia.pdf)) 1363 | 1364 | * **A theory of gradual effect systems** (ICFP 2014) 1365 | by Felipe Bañados Schwerter, Ronald Garcia, and Éric Tanter 1366 | ([doi](https://doi.org/10.1145/2628136.2628149)) 1367 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/SchwerterGT14.html)) 1368 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/SchwerterGT14.html?view=bibtex)) 1369 | 1370 | * **Effect handlers in scope** (Haskell 2014) 1371 | by Nicolas Wu, Tom Schrijvers, and Ralf Hinze 1372 | ([doi](https://doi.org/10.1145/2633357.2633358)) 1373 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/WuSH14.html)) 1374 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/WuSH14.html?view=bibtex)) 1375 | ([pdf](http://www.cs.ox.ac.uk/people/nicolas.wu/papers/Scope.pdf)) 1376 | 1377 | * **Embedding effect systems in Haskell** (Haskell 2014) 1378 | by Dominic A. Orchard and Tomas Petricek 1379 | ([doi](https://doi.org/10.1145/2633357.2633368)) 1380 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/OrchardP14.html)) 1381 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/OrchardP14.html?view=bibtex)) 1382 | ([pdf](https://www.cs.kent.ac.uk/people/staff/dao7/publ/haskell14-effects.pdf)) 1383 | 1384 | * **The semantic marriage of monads and effects** (Unpublished, 2014) 1385 | by Dominic A. Orchard, Tomas Petricek, and Alan Mycroft 1386 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/OrchardPM14.html)) 1387 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/OrchardPM14.html?view=bibtex)) 1388 | ([arxiv](https://arxiv.org/abs/1401.5391)) 1389 | ([pdf](https://arxiv.org/pdf/1401.5391)) 1390 | 1391 | * **Inferring Algebraic Effects** (LMCS 2014) 1392 | by Matija Pretnar 1393 | ([doi](https://doi.org/10.2168/LMCS-10(3:21)2014)) 1394 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/Pretnar13.html)) 1395 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/Pretnar13.html?view=bibtex)) 1396 | ([arxiv](https://arxiv.org/abs/1312.2334)) 1397 | ([pdf](https://arxiv.org/pdf/1312.2334)) 1398 | 1399 | * **An Effect System for Algebraic Effects and Handlers** (LMCS 2014) 1400 | by Andrej Bauer and Matija Pretnar 1401 | ([doi](https://doi.org/10.2168/LMCS-10(4:9)2014)) 1402 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/BauerP13.html)) 1403 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/BauerP13.html?view=bibtex)) 1404 | ([arxiv](https://arxiv.org/abs/1306.6316)) 1405 | ([pdf](https://arxiv.org/pdf/1306.6316)) 1406 | 1407 | * **Parametric effect monads and semantics of effect systems** (POPL 2014) 1408 | by Shin-ya Katsumata 1409 | ([doi](https://doi.org/10.1145/2535838.2535846)) 1410 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/Katsumata14.html)) 1411 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/Katsumata14.html?view=bibtex)) 1412 | 1413 | ### 2013 1414 | 1415 | * **Programming and reasoning with algebraic effects and dependent types** (ICFP 2013) 1416 | by Edwin C. Brady 1417 | ([doi](https://doi.org/10.1145/2500365.2500581)) 1418 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/Brady13.html)) 1419 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/Brady13.html?view=bibtex)) 1420 | ([pdf](https://www.type-driven.org.uk/edwinb/papers/effects.pdf)) 1421 | 1422 | * **The constrained-monad problem** (ICFP 2013) 1423 | by Neil Sculthorpe, Jan Bracker, George Giorgidze, and Andy Gill 1424 | ([doi](https://doi.org/10.1145/2500365.2500602)) 1425 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/SculthorpeBGG13.html)) 1426 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/SculthorpeBGG13.html?view=bibtex)) 1427 | ([pdf](http://neilsculthorpe.com/publications/constrained-monad-problem.pdf)) 1428 | 1429 | * **Handlers in action** (ICFP 2013) 1430 | by Ohad Kammar, Sam Lindley, and Nicolas Oury 1431 | ([doi](https://doi.org/10.1145/2500365.2500590)) 1432 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/KammarLO13.html)) 1433 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/KammarLO13.html?view=bibtex)) 1434 | ([pdf](http://homepages.inf.ed.ac.uk/slindley/papers/handlers.pdf)) 1435 | ([GitHub](https://github.com/slindley/effect-handlers)) 1436 | 1437 | * **Extensible effects: an alternative to monad transformers** (Haskell 2013) 1438 | by Oleg Kiselyov, Amr Sabry, and Cameron Swords 1439 | ([doi](https://doi.org/10.1145/2503778.2503791)) 1440 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/KiselyovSS13.html)) 1441 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/KiselyovSS13.html?view=bibtex)) 1442 | ([pdf](https://www.cs.indiana.edu/~sabry/papers/exteff.pdf)) 1443 | 1444 | * **Java UI : Effects for Controlling UI Object Access** (ECOOP 2013) 1445 | by Colin S. Gordon, Werner Dietl, Michael D. Ernst, and Dan Grossman 1446 | ([doi](https://doi.org/10.1007/978-3-642-39038-8_8)) 1447 | ([dblp](https://dblp.uni-trier.de/rec/conf/ecoop/GordonDEG13.html)) 1448 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ecoop/GordonDEG13.html?view=bibtex)) 1449 | ([pdf](https://www.cs.drexel.edu/~csgordon/papers/ecoop13.pdf)) 1450 | 1451 | * **Handling Algebraic Effects** (LMCS 2013) 1452 | by Gordon D. Plotkin and Matija Pretnar 1453 | ([doi](https://doi.org/10.2168/LMCS-9(4:23)2013)) 1454 | ([dblp](https://dblp.uni-trier.de/rec/journals/corr/PlotkinP13.html)) 1455 | ([bibtex](https://dblp.uni-trier.de/rec/journals/corr/PlotkinP13.html?view=bibtex)) 1456 | ([arxiv](https://arxiv.org/abs/1312.1399)) 1457 | ([pdf](https://arxiv.org/pdf/1312.1399)) 1458 | 1459 | * **Normalization by Evaluation and Algebraic Effects** (MFPS 2013) 1460 | by Danel Ahman and Sam Staton 1461 | ([doi](https://doi.org/10.1016/j.entcs.2013.09.007)) 1462 | ([dblp](https://dblp.uni-trier.de/rec/journals/entcs/AhmanS13.html)) 1463 | ([bibtex](https://dblp.uni-trier.de/rec/journals/entcs/AhmanS13.html?view=bibtex)) 1464 | ([pdf](https://danel.ahman.ee/papers/mfps13.pdf)) 1465 | 1466 | * **The sequential semantics of producer effect systems** (POPL 2013) 1467 | by Ross Tate 1468 | ([doi](https://doi.org/10.1145/2429069.2429074)) 1469 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/Tate13.html)) 1470 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/Tate13.html?view=bibtex)) 1471 | 1472 | ### 2012 1473 | 1474 | * **Lightweight Polymorphic Effects** (ECOOP 2012) 1475 | by Lukas Rytz, Martin Odersky, and Philipp Haller 1476 | ([doi](https://doi.org/10.1007/978-3-642-31057-7_13)) 1477 | ([dblp](https://dblp.uni-trier.de/rec/conf/ecoop/RytzOH12.html)) 1478 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ecoop/RytzOH12.html?view=bibtex)) 1479 | 1480 | * **The Frank Manual** (2012) 1481 | by Conor McBride 1482 | ([www](https://personal.cis.strath.ac.uk/conor.mcbride/pub/Frank/)) 1483 | 1484 | * **Control.Effects** (2012) 1485 | by Sjoerd Visscher 1486 | 1487 | * **Koka: A Language with Row-Polymorphic Effect Inference** (HOPE 2012) 1488 | by Daan Leijen 1489 | 1490 | ### 2011 1491 | 1492 | * **Idioms are Oblivious, Arrows are Meticulous, Monads are Promiscuous** (ENTCS 2011) 1493 | by Sam Lindley, Philip Wadler, and Jeremy Yallop 1494 | ([doi](https://doi.org/10.1016/j.entcs.2011.02.018)) 1495 | ([dblp](https://dblp.uni-trier.de/rec/journals/entcs/LindleyWY11.html)) 1496 | ([bibtex](https://dblp.uni-trier.de/rec/journals/entcs/LindleyWY11.html?view=bibtex)) 1497 | 1498 | * **Lightweight monadic programming in ML** (ICFP 2011) 1499 | by Nikhil Swamy, Nataliya Guts, Daan Leijen, and Michael Hicks 1500 | ([doi](https://doi.org/10.1145/2034773.2034778)) 1501 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/SwamyGLH11.html)) 1502 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/SwamyGLH11.html?view=bibtex)) 1503 | ([pdf](http://www.cs.umd.edu/~mwh/papers/monadic.pdf)) 1504 | 1505 | * **Monads, zippers and views: virtualizing the monad stack** (ICFP 2011) 1506 | by Tom Schrijvers and Bruno C. d. S. Oliveira 1507 | ([doi](https://doi.org/10.1145/2034773.2034781)) 1508 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/SchrijversO11.html)) 1509 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/SchrijversO11.html?view=bibtex)) 1510 | 1511 | * **Just do it: simple monadic equational reasoning** (ICFP 2011) 1512 | by Jeremy Gibbons and Ralf Hinze 1513 | ([doi](https://doi.org/10.1145/2034773.2034777)) 1514 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/GibbonsH11.html)) 1515 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/GibbonsH11.html?view=bibtex)) 1516 | 1517 | ### 2010 1518 | 1519 | * **Monad transformers as monoid transformers** (Theor. Comp. Science 2010) 1520 | by Mauro Jaskelioff and Eugenio Moggi 1521 | ([doi](https://doi.org/10.1016/j.tcs.2010.09.011)) 1522 | ([dblp](https://dblp.uni-trier.de/rec/journals/tcs/JaskelioffM10.html)) 1523 | ([bibtex](https://dblp.uni-trier.de/rec/journals/tcs/JaskelioffM10.html?view=bibtex)) 1524 | 1525 | * **The Operational Monad Tutorial** (The Monad Reader, 2010) 1526 | by Heinrich Apfelmus 1527 | 1528 | ### 2009 1529 | 1530 | * **Handlers of Algebraic Effects** (ESOP 2009) 1531 | by Gordon D. Plotkin and Matija Pretnar 1532 | ([doi](https://doi.org/10.1007/978-3-642-00590-9_7)) 1533 | ([dblp](https://dblp.uni-trier.de/rec/conf/esop/PlotkinP09.html)) 1534 | ([bibtex](https://dblp.uni-trier.de/rec/conf/esop/PlotkinP09.html?view=bibtex)) 1535 | ([pdf](http://homepages.inf.ed.ac.uk/gdp/publications/Effect_Handlers.pdf)) 1536 | 1537 | * **Parameterised notions of computation** (JFP 2009) 1538 | by Robert Atkey 1539 | ([doi](https://doi.org/10.1017/S095679680900728X)) 1540 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/Atkey09.html)) 1541 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/Atkey09.html?view=bibtex)) 1542 | ([pdf](http://bentnib.org/paramnotions-jfp.pdf)) 1543 | 1544 | * **Algebras for Parameterised Monads** (CALCO 2009) 1545 | by Robert Atkey 1546 | ([doi](https://doi.org/10.1007/978-3-642-03741-2_2)) 1547 | ([dblp](https://dblp.uni-trier.de/rec/conf/calco/Atkey09.html)) 1548 | ([bibtex](https://dblp.uni-trier.de/rec/conf/calco/Atkey09.html?view=bibtex)) 1549 | ([pdf](http://bentnib.org/algebras-param-monads.pdf)) 1550 | 1551 | ### 2008 1552 | 1553 | * **Lightweight monadic regions** (Haskell 2008) 1554 | by Oleg Kiselyov and Chung-chieh Shan 1555 | ([doi](https://doi.org/10.1145/1411286.1411288)) 1556 | ([dblp](https://dblp.uni-trier.de/rec/conf/haskell/KiselyovS08.html)) 1557 | ([bibtex](https://dblp.uni-trier.de/rec/conf/haskell/KiselyovS08.html?view=bibtex)) 1558 | 1559 | * **A Logic for Algebraic Effects** (LICS 2008) 1560 | by Gordon D. Plotkin and Matija Pretnar 1561 | ([doi](https://doi.org/10.1109/LICS.2008.45)) 1562 | ([dblp](https://dblp.uni-trier.de/rec/conf/lics/PlotkinP08.html)) 1563 | ([bibtex](https://dblp.uni-trier.de/rec/conf/lics/PlotkinP08.html?view=bibtex)) 1564 | ([pdf](http://homepages.inf.ed.ac.uk/gdp/publications/Logic_Algebraic_Effects.pdf)) 1565 | 1566 | * **What is a Categorical Model of Arrows?** (MSFP 2008) 1567 | by Robert Atkey 1568 | ([doi](https://doi.org/10.1016/j.entcs.2011.02.014)) 1569 | ([dblp](https://dblp.uni-trier.de/rec/journals/entcs/Atkey11.html)) 1570 | ([bibtex](https://dblp.uni-trier.de/rec/journals/entcs/Atkey11.html?view=bibtex)) 1571 | ([pdf](http://bentnib.org/arrows.pdf)) 1572 | 1573 | * **Data types à la carte** (JFP 2008) 1574 | by Wouter Swierstra 1575 | ([doi](https://doi.org/10.1017/S0956796808006758)) 1576 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/Swierstra08.html)) 1577 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/Swierstra08.html?view=bibtex)) 1578 | ([pdf](https://www.cambridge.org/core/services/aop-cambridge-core/content/view/14416CB20C4637164EA9F77097909409/S0956796808006758a.pdf)) 1579 | 1580 | * **Types and trace effects of higher order programs** (JFP 2008) 1581 | by Christian Skalka, Scott F. Smith, and David Van Horn 1582 | ([doi](https://doi.org/10.1017/S0956796807006466)) 1583 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/SkalkaSH08.html)) 1584 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/SkalkaSH08.html?view=bibtex)) 1585 | 1586 | ### 2007 1587 | 1588 | * **Combining algebraic effects with continuations** (Theor. Comput. Sci. 2007) 1589 | by Martin Hyland, Paul Blain Levy, Gordon D. Plotkin, and John Power 1590 | ([doi](https://doi.org/10.1016/j.tcs.2006.12.026)) 1591 | ([dblp](https://dblp.uni-trier.de/rec/journals/tcs/HylandLPP07.html)) 1592 | ([bibtex](https://dblp.uni-trier.de/rec/journals/tcs/HylandLPP07.html?view=bibtex)) 1593 | 1594 | ### 2006 1595 | 1596 | * **Programming monads operationally with Unimo** (ICFP 2006) 1597 | by Chuan-Kai Lin 1598 | ([doi](https://doi.org/10.1145/1159803.1159840)) 1599 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/Lin06.html)) 1600 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/Lin06.html?view=bibtex)) 1601 | 1602 | * **Monadic regions** (JFP 2006) 1603 | by Matthew Fluet and J. Gregory Morrisett 1604 | ([doi](https://doi.org/10.1017/S095679680600596X)) 1605 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/FluetM06.html)) 1606 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/FluetM06.html?view=bibtex)) 1607 | 1608 | ### 2003 1609 | 1610 | * **A Monadic Multi-stage Metalanguage** (FOSSACS 2003) 1611 | by Eugenio Moggi and Sonia Fagorzi 1612 | ([doi](https://doi.org/10.1007/3-540-36576-1_23)) 1613 | ([dblp](https://dblp.uni-trier.de/rec/conf/fossacs/MoggiF03.html)) 1614 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fossacs/MoggiF03.html?view=bibtex)) 1615 | ([pdf](http://www.macs.hw.ac.uk/~jbw/ec-fp5-ist-fet-gc/reports/D1.1/MF02.pdf)) 1616 | 1617 | * **Algebraic Operations and Generic Effects** (Applied categorical structures, 2003) 1618 | by Gordon D. Plotkin and John Power 1619 | ([doi](https://doi.org/10.1023/A:1023064908962)) 1620 | ([dblp](https://dblp.uni-trier.de/rec/journals/acs/PlotkinP03.html)) 1621 | ([bibtex](https://dblp.uni-trier.de/rec/journals/acs/PlotkinP03.html?view=bibtex)) 1622 | ([pdf](http://homepages.inf.ed.ac.uk/gdp/publications/alg_ops_gen_effects.pdf)) 1623 | 1624 | * **The marriage of effects and monads** (Trans. Comp. Logic, 2003) 1625 | by Philip Wadler and Peter Thiemann 1626 | ([doi](https://doi.org/10.1145/601775.601776)) 1627 | ([dblp](https://dblp.uni-trier.de/rec/journals/tocl/WadlerT03.html)) 1628 | ([bibtex](https://dblp.uni-trier.de/rec/journals/tocl/WadlerT03.html?view=bibtex)) 1629 | 1630 | ### 2002 1631 | 1632 | * **Composing monads using coproducts** (ICFP 2002) 1633 | by Christoph Lüth and Neil Ghani 1634 | ([doi](https://doi.org/10.1145/581478.581492)) 1635 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/LuthG02.html)) 1636 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/LuthG02.html?view=bibtex)) 1637 | 1638 | * **Notions of Computation Determine Monads** (FoSSaCS 2002) 1639 | by Gordon D. Plotkin and John Power 1640 | ([doi](https://doi.org/10.1007/3-540-45931-6_24)) 1641 | ([dblp](https://dblp.uni-trier.de/rec/conf/fossacs/PlotkinP02.html)) 1642 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fossacs/PlotkinP02.html?view=bibtex)) 1643 | 1644 | ### 2001 1645 | 1646 | * **Monadic encapsulation of effects: a revised approach (extended version)** (JFP 2001) 1647 | by Eugenio Moggi and Amr Sabry 1648 | ([doi](https://doi.org/10.1017/S0956796801004154)) 1649 | ([dblp](https://dblp.uni-trier.de/rec/journals/jfp/MoggiS01.html)) 1650 | ([bibtex](https://dblp.uni-trier.de/rec/journals/jfp/MoggiS01.html?view=bibtex)) 1651 | 1652 | * **Adequacy for Algebraic Effects** (FoSSaCS 2001) 1653 | by Gordon D. Plotkin and John Power 1654 | ([doi](https://doi.org/10.1007/3-540-45315-6_1)) 1655 | ([dblp](https://dblp.uni-trier.de/rec/conf/fossacs/PlotkinP01.html)) 1656 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fossacs/PlotkinP01.html?view=bibtex)) 1657 | 1658 | ### 2000 1659 | 1660 | * **Deriving backtracking monad transformers** (ICFP 2000) 1661 | by Ralf Hinze 1662 | ([doi](https://doi.org/10.1145/351240.351258)) 1663 | ([dblp](https://dblp.uni-trier.de/rec/conf/icfp/Hinze00.html)) 1664 | ([bibtex](https://dblp.uni-trier.de/rec/conf/icfp/Hinze00.html?view=bibtex)) 1665 | 1666 | * **Monads and Effects** (APPSEM 2000) 1667 | by Nick Benton, John Hughes, and Eugenio Moggi 1668 | ([doi](https://doi.org/10.1007/3-540-45699-6_2)) 1669 | ([dblp](https://dblp.uni-trier.de/rec/conf/ac/BentonHM00.html)) 1670 | ([bibtex](https://dblp.uni-trier.de/rec/conf/ac/BentonHM00.html?view=bibtex)) 1671 | 1672 | ### 1999 1673 | 1674 | * **Representing Layered Monads** (POPL 1999) 1675 | by Andrzej Filinski 1676 | ([doi](https://doi.org/10.1145/292540.292557)) 1677 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/Filinski99.html)) 1678 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/Filinski99.html?view=bibtex)) 1679 | ([ps.gz](http://hjemmesider.diku.dk/~andrzej/papers/RLM.ps.gz)) 1680 | 1681 | ### 1995 1682 | 1683 | * **Monad Transformers and Modular Interpreters** (POPL 1995) 1684 | by Sheng Liang, Paul Hudak, and Mark P. Jones 1685 | ([doi](https://doi.org/10.1145/199448.199528)) 1686 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/LiangHJ95.html)) 1687 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/LiangHJ95.html?view=bibtex)) 1688 | 1689 | * **Monads for Functional Programming** (1995) 1690 | by Philip Wadler 1691 | ([doi](https://doi.org/10.1007/3-540-59451-5_2)) 1692 | ([dblp](https://dblp.uni-trier.de/rec/conf/afp/Wadler95.html)) 1693 | ([bibtex](https://dblp.uni-trier.de/rec/conf/afp/Wadler95.html?view=bibtex)) 1694 | 1695 | ### 1994 1696 | 1697 | * **Extensible Denotational Language Specifications** (TACS 1994) 1698 | by Robert Cartwright and Matthias Felleisen 1699 | ([doi](https://doi.org/10.1007/3-540-57887-0_99)) 1700 | ([dblp](https://dblp.uni-trier.de/rec/conf/tacs/CartwrightF94.html)) 1701 | ([bibtex](https://dblp.uni-trier.de/rec/conf/tacs/CartwrightF94.html?view=bibtex)) 1702 | ([ps.gz](http://www.cs.rice.edu/CS/PLT/Publications/Scheme/tacs94-cf.ps.gz)) 1703 | 1704 | * **Building interpreters by transforming stratified monads** (Unpublished, 1994) 1705 | by David Espinosa 1706 | ([pdf](https://github.com/davidespinosa01/papers/blob/master/E/Espinosa%20David/espinosa-stratified-monads.pdf)) 1707 | 1708 | * **Representing Monads** (POPL 1994) 1709 | by Andrzej Filinski 1710 | ([doi](https://doi.org/10.1145/174675.178047)) 1711 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/Filinski94.html)) 1712 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/Filinski94.html?view=bibtex)) 1713 | 1714 | * **Building Interpreters by Composing Monads** (POPL 1994) 1715 | by Guy L. Steele Jr. 1716 | ([doi](https://doi.org/10.1145/174675.178068)) 1717 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/Steele94.html)) 1718 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/Steele94.html?view=bibtex)) 1719 | 1720 | * **Monads and Composable Continuations** (J. Lisp & Symb. Comp. 1994) 1721 | by Philip Wadler 1722 | ([dblp](https://dblp.uni-trier.de/rec/journals/lisp/Wadler94.html)) 1723 | ([bibtex](https://dblp.uni-trier.de/rec/journals/lisp/Wadler94.html?view=bibtex)) 1724 | 1725 | ### 1993 1726 | 1727 | * **Imperative Functional Programming** (POPL 1993) 1728 | by Simon L. Peyton Jones and Philip Wadler 1729 | ([doi](https://doi.org/10.1145/158511.158524)) 1730 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/JonesW93.html)) 1731 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/JonesW93.html?view=bibtex)) 1732 | 1733 | * **How to Compose Monads** (Thinking Machines Corporation tech. report, 1993) 1734 | by Guy L. Steele Jr. 1735 | 1736 | * **Modular denotational semantics** (Unpublished, 1993) 1737 | by David Espinosa 1738 | ([pdf](https://github.com/davidespinosa01/papers/blob/master/E/Espinosa%20David/espinosa-semantic-lego.pdf)) 1739 | 1740 | ### 1992 1741 | 1742 | * **Combining Monads** (Functional Programming, 1992) 1743 | by David J. King and Philip Wadler 1744 | ([doi](https://doi.org/10.1007/978-1-4471-3215-8_12)) 1745 | ([dblp](https://dblp.uni-trier.de/rec/conf/fp/KingW92.html)) 1746 | ([bibtex](https://dblp.uni-trier.de/rec/conf/fp/KingW92.html?view=bibtex)) 1747 | 1748 | * **The Essence of Functional Programming** (POPL 1992) 1749 | by Philip Wadler 1750 | ([doi](https://doi.org/10.1145/143165.143169)) 1751 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/Wadler92.html)) 1752 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/Wadler92.html?view=bibtex)) 1753 | 1754 | ### 1991 1755 | 1756 | * **Notions of Computation and Monads** (Information and Computation, 93(1), 1991) 1757 | by Eugenio Moggi 1758 | ([doi](https://doi.org/10.1016/0890-5401(91)90052-4)) 1759 | ([dblp](https://dblp.uni-trier.de/rec/journals/iandc/Moggi91.html)) 1760 | ([bibtex](https://dblp.uni-trier.de/rec/journals/iandc/Moggi91.html?view=bibtex)) 1761 | ([pdf](https://core.ac.uk/download/pdf/82259574.pdf)) 1762 | 1763 | ### 1990 1764 | 1765 | * **Comprehending Monads** (Lisp and Functional Programming, 1990) 1766 | by Philip Wadler 1767 | ([doi](https://doi.org/10.1145/91556.91592)) 1768 | ([dblp](https://dblp.uni-trier.de/rec/conf/lfp/Wadler90.html)) 1769 | ([bibtex](https://dblp.uni-trier.de/rec/conf/lfp/Wadler90.html?view=bibtex)) 1770 | 1771 | * **Abstracting Control** (LFP 1990) 1772 | by Olivier Danvy and Andrzej Filinski 1773 | ([doi](https://doi.org/10.1145/91556.91622)) 1774 | ([dblp](https://dblp.uni-trier.de/rec/conf/lfp/DanvyF90.html)) 1775 | ([bibtex](https://dblp.uni-trier.de/rec/conf/lfp/DanvyF90.html?view=bibtex)) 1776 | 1777 | ### 1989 1778 | 1779 | * **Computational Lambda-Calculus and Monads** (LICS 1989) 1780 | by Eugenio Moggi 1781 | ([doi](https://doi.org/10.1109/LICS.1989.39155)) 1782 | ([dblp](https://dblp.uni-trier.de/rec/conf/lics/Moggi89.html)) 1783 | ([bibtex](https://dblp.uni-trier.de/rec/conf/lics/Moggi89.html?view=bibtex)) 1784 | ([pdf](http://www.cs.cmu.edu/~crary/819-f09/Moggi89.pdf)) 1785 | 1786 | * **An abstract view of programming languages** (Ed. Uni. Tech Report, 1989) 1787 | by Eugenio Moggi 1788 | 1789 | ### 1988 1790 | 1791 | * **Polymorphic Effect Systems** (POPL 1988) 1792 | by John M. Lucassen and David K. Gifford 1793 | ([doi](https://doi.org/10.1145/73560.73564)) 1794 | ([dblp](https://dblp.uni-trier.de/rec/conf/popl/LucassenG88.html)) 1795 | ([bibtex](https://dblp.uni-trier.de/rec/conf/popl/LucassenG88.html?view=bibtex)) 1796 | 1797 | * **The FX-87 Interpreter** (ICCL 1988) 1798 | by Pierre Jouvelot and David K. Gifford 1799 | ([doi](https://doi.org/10.1109/ICCL.1988.13044)) 1800 | ([dblp](https://dblp.uni-trier.de/rec/conf/iccl/JouvelotG88.html)) 1801 | ([bibtex](https://dblp.uni-trier.de/rec/conf/iccl/JouvelotG88.html?view=bibtex)) 1802 | 1803 | ## Theses and Dissertations 1804 | 1805 | ### 2024 1806 | 1807 | * **Runtime Verification through Algebraic Effect Handlers** (Masters Dissertation, University of Pisa) 1808 | by Alessandro Scala 1809 | ([pdf](https://etd.adm.unipi.it/theses/available/etd-06252024-164535/unrestricted/Runtime_Verification_Algebraic_Effect_Handlers.pdf)) 1810 | 1811 | * **Efficient multishot algebraic effect handlers** (PhD Dissertation, University of Ljubljana) 1812 | by Filip Koprivec 1813 | ([pdf](https://repozitorij.uni-lj.si/Dokument.php?id=192065&lang=slv)) 1814 | 1815 | * **Automatic differentiation via effects and handlers** (PhD Dissertation, University of Edinburgh) 1816 | by Jesse Sigal 1817 | ([pdf](https://era.ed.ac.uk/bitstream/handle/1842/41919/Sigal2024.pdf?sequence=1&isAllowed=y)) 1818 | 1819 | * **Relational Models for a Language with Effect Capabilities** (MSc Dissertation, University of Wrocław) 1820 | by Patrycja Balik 1821 | ([pdf](https://ii.uni.wroc.pl/media/uploads/2024/12/01/balik-patrycja-praca.pdf)) 1822 | ([YouTube](https://youtu.be/I8vtWYlrktU)) 1823 | 1824 | * **Algebraic Effects and Handlers for Arrows** (PhD Dissertation, Kyoto University) 1825 | by Takahiro Sanada 1826 | ([pdf](https://www.kurims.kyoto-u.ac.jp/~tsanada/papers/phdthesis.pdf)) 1827 | 1828 | ### 2023 1829 | 1830 | * **Elaine: Elaboration of Higher-Order Effects as First-Class Language Feature** (MSc Dissertation, TU Delft) 1831 | by Terts Diepraam 1832 | ([pdf](https://repository.tudelft.nl/islandora/object/uuid:f6c38be6-853f-499b-aa4e-cfa2ce219bf5/datastream/OBJ/download)) 1833 | 1834 | * **Deriving Effect Handler Semantics** (MSc Dissertation, TU Delft) 1835 | by Chris Lemaire 1836 | ([pdf](https://repository.tudelft.nl/islandora/object/uuid:414215b8-837d-46d5-952e-bdc5b47e47cc/datastream/OBJ/download)) 1837 | 1838 | * **Concurrent Structures and Effect Handlers: A Batch Made in Heaven** (BSc Dissertation, Yale NUS College) 1839 | by Lee Koon Wen 1840 | ([pdf](https://ilyasergey.net/assets/pdf/papers/Koon-Wen-Lee-Capstone.pdf)) 1841 | 1842 | ### 2022 1843 | 1844 | * **Algebraic Effect Instance Scopes** (BSc Dissertation, University of Wroclaw) 1845 | by Patrycja Balik 1846 | ([pdf](https://ii.uni.wroc.pl/media/uploads/2022/11/18/balik-patrycja-praca.pdf)) 1847 | 1848 | * **Comprehending Pure Functional Effect Systems** (MSc Dissertation, University of Oxford) 1849 | by Daniel Tattan-Birch 1850 | ([pdf](https://www.dantb.dev/files/dissertation.pdf)) 1851 | ([Summary post](https://www.dantb.dev/posts/dissertation)) 1852 | 1853 | ### 2021 1854 | 1855 | * **Foundations for Programming and Implementing Effect Handlers** (PhD Dissertation, The University of Edinburgh) 1856 | by Daniel Hillerström 1857 | ([pdf](https://dhil.net/research/papers/thesis.pdf)) 1858 | ([GitHub](https://github.com/dhil/phd-dissertation)) 1859 | 1860 | * **Extending Effekt with Bidirectional Effects** (MSc Dissertation, Tokyo Institute of Technology) 1861 | by Kazuki Niimi 1862 | ([pdf](https://prg.is.titech.ac.jp/wp-content/uploads/2021/04/2021-03M-niimi.pdf)) 1863 | 1864 | ### 2020 1865 | 1866 | * **Linear Frank** (BSc Dissertation, The University of New South Wales) 1867 | by James Treloar 1868 | ([pdf](https://people.eng.unimelb.edu.au/rizkallahc/theses/james-treloar-honours-thesis.pdf)) 1869 | 1870 | * **Applications of Algebraic Effect Theories** (PhD Dissertation, University of Ljubljana) 1871 | by Žiga Lukšič 1872 | ([pdf](https://repozitorij.uni-lj.si/Dokument.php?id=137124&lang=eng)) 1873 | 1874 | * **Asynchronous Effect Handling** (MSc Dissertation, The University of Edinburgh) 1875 | by Leo Poulson 1876 | ([pdf](https://raw.githubusercontent.com/leopoulson/thesis/master/thesis.pdf)) 1877 | 1878 | * **Relational reasoning for effects and handlers** (PhD Dissertation, The University of Edinburgh) 1879 | by Craig McLaughlin 1880 | ([doi](http://dx.doi.org/10.7488/era/537)) 1881 | ([dblp](https://dblp.uni-trier.de/rec/phd/ethos/McLaughlin20.html)) 1882 | ([bibtex](https://dblp.uni-trier.de/rec/phd/ethos/McLaughlin20.html?view=bibtex)) 1883 | ([pdf](https://era.ed.ac.uk/bitstream/handle/1842/37236/McLaughlin2020.pdf?sequence=1&isAllowed=y)) 1884 | 1885 | * **Design and Implementation of Effect Handlers for Object-Oriented Programming Languages** (PhD Dissertation, University of Tübingen) 1886 | by Jonathan Immanuel Brachthäuser 1887 | ([dblp](https://dblp.uni-trier.de/rec/phd/dnb/Brachthauser20.html)) 1888 | ([bibtex](https://dblp.uni-trier.de/rec/phd/dnb/Brachthauser20.html?view=bibtex)) 1889 | 1890 | ### 2019 1891 | 1892 | * **Modular probabilistic programming with algebraic effects** (MSc Dissertation, University of Edinburgh) 1893 | by Oliver Goldstein 1894 | ([doi](http://dx.doi.org/10.7488/era/5485)) 1895 | ([pdf](https://era.ed.ac.uk/bitstream/handle/1842/42934/GoldsteinO_2019.pdf)) 1896 | 1897 | * **A Type System for Dynamic Instances** (MSc Dissertation, TU Delft) 1898 | by Albert ten Napel 1899 | ([pdf](https://repository.tudelft.nl/islandora/object/uuid:36d382d8-3ba4-4825-b718-a080b01b0649/datastream/OBJ/download)) 1900 | 1901 | * **Efficient Algebraic Effect Handlers** (PhD Dissertation, KU Leuven) 1902 | by Amr Hany Saleh 1903 | ([pdf](https://lirias.kuleuven.be/retrieve/532832/)) 1904 | 1905 | * **Program Equivalence for Algebraic Effects via Modalities** (MSc Dissertation, University of Oxford) 1906 | by Cristina Matache 1907 | ([pdf](https://homepages.inf.ed.ac.uk/cmatache/documents/m_diss.pdf)) 1908 | 1909 | * **Defined algebraic operations** (PhD Dissertation, University of Birmingham) 1910 | by Bram Geron 1911 | ([dblp](https://dblp.uni-trier.de/rec/phd/ethos/Geron20.html)) 1912 | ([bibtex](https://dblp.uni-trier.de/rec/phd/ethos/Geron20.html?view=bibtex)) 1913 | ([pdf](https://etheses.bham.ac.uk//id/eprint/10520/1/Geron2020PhD.pdf)) 1914 | 1915 | ### 2018 1916 | 1917 | * **Algebraic Subtyping for Algebraic Effects and Handlers** (MSc Dissertation, KU Leuven) 1918 | by Alex Faes 1919 | ([pdf](https://github.com/TheAxeC/algebraic-subtyping-for-algebraic-effects-and-handlers/blob/master/thesis.pdf)) 1920 | 1921 | ### 2017 1922 | 1923 | * **Distributive interaction of algebraic effects** (PhD Dissertation, University of Oxford) 1924 | by Kwok-Ho Cheung 1925 | ([dblp](https://dblp.uni-trier.de/rec/phd/ethos/Cheung17.html)) 1926 | ([bibtex](https://dblp.uni-trier.de/rec/phd/ethos/Cheung17.html?view=bibtex)) 1927 | ([pdf](https://ora.ox.ac.uk/objects/uuid:66106628-0a71-4564-bc34-c398db766818/download_file?file_format=pdf&safe_filename=report.pdf&type_of_work=Thesis)) 1928 | 1929 | * **Enhancing a Modular Effectful Programming Language** (MSc Dissertation, The University of Edinburgh) 1930 | by Lukas Convent 1931 | ([pdf](http://lukas.convnet.de/proj/master/res/thesis.pdf)) 1932 | 1933 | * **Fibred computational effects** (PhD Dissertation, The University of Edinburgh) 1934 | by Danel Ahman 1935 | ([dblp](https://dblp.uni-trier.de/rec/phd/ethos/Ahman17.html)) 1936 | ([bibtex](https://dblp.uni-trier.de/rec/phd/ethos/Ahman17.html?view=bibtex)) 1937 | ([pdf](https://danel.ahman.ee/papers/phd-thesis.pdf)) 1938 | 1939 | ### 2016 1940 | 1941 | * **Compilation of Effect Handlers and their Applications in Concurrency** (MSc Dissertation, The University of Edinburgh) 1942 | by Daniel Hillerström 1943 | ([pdf](https://www.dhil.net/research/papers/thesis2016.pdf)) 1944 | 1945 | * **On the expressive power of effect handlers and monadic reflection** (MSc Dissertation, University of Cambridge) 1946 | by Yannick Forster 1947 | ([pdf](http://www.ps.uni-saarland.de/~forster/downloads/mphil-thesis.pdf)) 1948 | 1949 | ### 2015 1950 | 1951 | * **Handlers for Algebraic Effects in Links** (MSc Dissertation, The University of Edinburgh) 1952 | by Daniel Hillerström 1953 | ([pdf](https://www.dhil.net/research/papers/thesis2015.pdf)) 1954 | 1955 | ### 2010 1956 | 1957 | * **Logic and handling of algebraic effects** (PhD Dissertation, The University of Edinburgh) 1958 | by Matija Pretnar 1959 | ([dblp](https://dblp.uni-trier.de/rec/phd/ethos/Pretnar10.html)) 1960 | ([bibtex](https://dblp.uni-trier.de/rec/phd/ethos/Pretnar10.html?view=bibtex)) 1961 | ([pdf](https://www.era.lib.ed.ac.uk/bitstream/handle/1842/4611/Pretnar2010.pdf)) 1962 | 1963 | ### 1996 1964 | 1965 | * **Controlling Effects** (PhD Dissertation, Carnegie Mellon University) 1966 | by Andrzej Filinski 1967 | ([dvi.gz](http://hjemmesider.diku.dk/~andrzej/papers/CE.dvi.gz)) 1968 | ([ps.gz](http://hjemmesider.diku.dk/~andrzej/papers/CE.ps.gz)) 1969 | 1970 | ### 1995 1971 | 1972 | * **Semantic Lego** (PhD Dissertation, Columbia University) 1973 | by David Espinosa 1974 | ([pdf](https://github.com/davidespinosa01/papers/raw/master/E/Espinosa%20David/espinosa-thesis.pdf)) 1975 | ([pdf slides](https://github.com/davidespinosa01/papers/raw/master/E/Espinosa%20David/espinosa-thesis-slides.pdf)) 1976 | 1977 | ### 1987 1978 | 1979 | * **Types and Effects — Towards the Integration of Functional and Imperative Programming** (PhD Dissertation, MIT) 1980 | by John M. Lucassen 1981 | ([pdf](https://apps.dtic.mil/sti/pdfs/ADA186930.pdf)) 1982 | 1983 | --- 1984 | 1985 | Status of links at last commit: [![Links](https://github.com/yallop/effects-bibliography/actions/workflows/checklinks.yml/badge.svg)](https://github.com/yallop/effects-bibliography/actions/workflows/checklinks.yml) 1986 | --------------------------------------------------------------------------------