|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Daniel's master's thesis (initial implementation of handlers in Links)
|
|
|
|
|
@MastersThesis{Hillerstrom15,
|
|
|
|
|
author = {Daniel Hillerström},
|
|
|
|
|
title = {Handlers for Algebraic Effects in {Links}},
|
|
|
|
|
school = {School of Informatics, The University of Edinburgh},
|
|
|
|
|
address = {Scotland},
|
|
|
|
|
month = aug,
|
|
|
|
|
year = 2015
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Daniel's master's thesis (abstract message-passing concurrency model, compilation of handlers)
|
|
|
|
|
@MastersThesis{Hillerstrom16,
|
|
|
|
|
author = {Daniel Hillerström},
|
|
|
|
|
title = {Compilation of Effect Handlers and their Applications in Concurrency},
|
|
|
|
|
school = {School of Informatics, The University of Edinburgh},
|
|
|
|
|
address = {Scotland},
|
|
|
|
|
optmonth = aug,
|
|
|
|
|
year = 2016,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# OCaml handlers
|
|
|
|
|
@misc{DolanWSYM15,
|
|
|
|
|
title = {Effective Concurrency through Algebraic Effects},
|
|
|
|
|
author = {Stephen Dolan and Leo White and {KC} Sivaramakrishnan and Jeremy Yallop and Anil Madhavapeddy},
|
|
|
|
|
year = 2015,
|
|
|
|
|
howpublished = {OCaml Workshop}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@misc{DolanWM14,
|
|
|
|
|
title = {Multicore {OCaml}},
|
|
|
|
|
author = {Stephen Dolan and Leo White and Anil Madhavapeddy},
|
|
|
|
|
year = {2014},
|
|
|
|
|
howpublished = {OCaml Workshop}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{DolanEHMSW17,
|
|
|
|
|
author = {Stephen Dolan and
|
|
|
|
|
Spiros Eliopoulos and
|
|
|
|
|
Daniel Hillerstr{\"{o}}m and
|
|
|
|
|
Anil Madhavapeddy and
|
|
|
|
|
K. C. Sivaramakrishnan and
|
|
|
|
|
Leo White},
|
|
|
|
|
title = {Concurrent System Programming with Effect Handlers},
|
|
|
|
|
booktitle = {{TFP}},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {10788},
|
|
|
|
|
pages = {98--117},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Efficient one-shot continuations
|
|
|
|
|
@inproceedings{BruggemanWD96,
|
|
|
|
|
author = {Carl Bruggeman and
|
|
|
|
|
Oscar Waddell and
|
|
|
|
|
R. Kent Dybvig},
|
|
|
|
|
editor = {Charles N. Fischer},
|
|
|
|
|
title = {Representing Control in the Presence of One-Shot Continuations},
|
|
|
|
|
booktitle = {Proceedings of the {ACM} SIGPLAN'96 Conference on Programming Language
|
|
|
|
|
Design and Implementation (PLDI), Philadephia, Pennsylvania, May 21-24,
|
|
|
|
|
1996},
|
|
|
|
|
pages = {99--107},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {1996},
|
|
|
|
|
OPTurl = {http://doi.acm.org/10.1145/231379.231395},
|
|
|
|
|
OPTdoi = {10.1145/231379.231395},
|
|
|
|
|
timestamp = {Mon, 21 May 2012 16:19:53 +0200},
|
|
|
|
|
biburl = {http://dblp.uni-trier.de/rec/bib/conf/pldi/BruggemanWD96},
|
|
|
|
|
bibsource = {dblp computer science bibliography, http://dblp.org}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Programming with continuations
|
|
|
|
|
@InProceedings{FriedmanHK84,
|
|
|
|
|
author = {Daniel P. Friedman
|
|
|
|
|
and Christopher T Haynes
|
|
|
|
|
and Eugene Kohlbecker},
|
|
|
|
|
editor = {Peter Pepper},
|
|
|
|
|
title = {Programming with Continuations},
|
|
|
|
|
booktitle = {Program Transformation and Programming Environments},
|
|
|
|
|
year = 1984,
|
|
|
|
|
publisher = {Springer Berlin Heidelberg},
|
|
|
|
|
address = {Berlin, Heidelberg},
|
|
|
|
|
pages = {263--274},
|
|
|
|
|
isbn = {978-3-642-46490-4}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Links compiler + Multicore OCaml
|
|
|
|
|
@Misc{HillerstromLS16,
|
|
|
|
|
author = {Daniel Hillerström and Sam Lindley and {KC} Sivaramakrishnan},
|
|
|
|
|
title = {Compiling {Links} Effect Handlers to the {OCaml} Backend},
|
|
|
|
|
year = {2016},
|
|
|
|
|
optmonth = sep,
|
|
|
|
|
howpublished = {{ML Workshop}}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Core references on handlers
|
|
|
|
|
@phdthesis{Pretnar10,
|
|
|
|
|
author = {Matija Pretnar},
|
|
|
|
|
title = {Logic and handling of algebraic effects},
|
|
|
|
|
school = {The University of Edinburgh, {UK}},
|
|
|
|
|
year = {2010}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{PlotkinP09,
|
|
|
|
|
author = {Gordon D. Plotkin and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {Handlers of Algebraic Effects},
|
|
|
|
|
booktitle = {{ESOP}},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {5502},
|
|
|
|
|
pages = {80--94},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2009}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{PlotkinP13,
|
|
|
|
|
author = {Gordon D. Plotkin and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {Handling Algebraic Effects},
|
|
|
|
|
journal = {Logical Methods in Computer Science},
|
|
|
|
|
volume = {9},
|
|
|
|
|
number = {4},
|
|
|
|
|
year = {2013},
|
|
|
|
|
OPTurl = {http://dx.doi.org/10.2168/LMCS-9(4:23)2013},
|
|
|
|
|
OPTdoi = {10.2168/LMCS-9(4:23)2013},
|
|
|
|
|
timestamp = {Thu, 31 Aug 4448958 16:06:56 +},
|
|
|
|
|
biburl = {http://dblp.uni-trier.de/rec/bib/journals/corr/PlotkinP13},
|
|
|
|
|
bibsource = {dblp computer science bibliography, http://dblp.org}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{PlotkinP03,
|
|
|
|
|
author = {Gordon D. Plotkin and
|
|
|
|
|
John Power},
|
|
|
|
|
title = {Algebraic Operations and Generic Effects},
|
|
|
|
|
journal = {Applied Categorical Structures},
|
|
|
|
|
volume = {11},
|
|
|
|
|
number = {1},
|
|
|
|
|
pages = {69--94},
|
|
|
|
|
year = {2003},
|
|
|
|
|
OPTurl = {http://dx.doi.org/10.1023/A:1023064908962},
|
|
|
|
|
OPTdoi = {10.1023/A:1023064908962},
|
|
|
|
|
timestamp = {Mon, 29 May 2006 12:06:44 +0200},
|
|
|
|
|
biburl = {http://dblp.uni-trier.de/rec/bib/journals/acs/PlotkinP03},
|
|
|
|
|
bibsource = {dblp computer science bibliography, http://dblp.org}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{PlotkinP01,
|
|
|
|
|
author = {Gordon D. Plotkin and
|
|
|
|
|
John Power},
|
|
|
|
|
title = {Adequacy for Algebraic Effects},
|
|
|
|
|
booktitle = {FoSSaCS},
|
|
|
|
|
OPTseries = {Lecture Notes in Computer Science},
|
|
|
|
|
series = {LNCS},
|
|
|
|
|
volume = {2030},
|
|
|
|
|
pages = {1--24},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2001}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Other algebraic effects and handlers
|
|
|
|
|
@InProceedings{Lindley14,
|
|
|
|
|
author = {Sam Lindley},
|
|
|
|
|
editor = {Jos{\'{e}} Pedro Magalh{\~{a}}es and
|
|
|
|
|
Tiark Rompf},
|
|
|
|
|
title = {Algebraic effects and effect handlers for idioms and arrows},
|
|
|
|
|
booktitle = {Proceedings of the 10th {ACM} {SIGPLAN} workshop on Generic programming,
|
|
|
|
|
{WGP} 2014, Gothenburg, Sweden, August 31, 2014},
|
|
|
|
|
pages = {47--58},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2014},
|
|
|
|
|
OPTurl = {http://doi.acm.org/10.1145/2633628.2633636},
|
|
|
|
|
OPTdoi = {10.1145/2633628.2633636},
|
|
|
|
|
timestamp = {Thu, 25 Jun 2015 13:50:37 +0200},
|
|
|
|
|
biburl = {http://dblp.uni-trier.de/rec/bib/conf/icfp/Lindley14},
|
|
|
|
|
bibsource = {dblp computer science bibliography, http://dblp.org}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{Pretnar15,
|
|
|
|
|
author = {Matija Pretnar},
|
|
|
|
|
title = {An Introduction to Algebraic Effects and Handlers},
|
|
|
|
|
journal = {Electr. Notes Theor. Comput. Sci.},
|
|
|
|
|
volume = {319},
|
|
|
|
|
pages = {19--35},
|
|
|
|
|
year = {2015},
|
|
|
|
|
note = {Invited tutorial paper}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{KammarP17,
|
|
|
|
|
author = {Ohad Kammar and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {No value restriction is needed for algebraic effects and handlers},
|
|
|
|
|
journal = {J. Funct. Program.},
|
|
|
|
|
volume = {27},
|
|
|
|
|
pages = {e7},
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{ForsterKLP17,
|
|
|
|
|
author = {Yannick Forster and
|
|
|
|
|
Ohad Kammar and
|
|
|
|
|
Sam Lindley and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {On the Expressive Power of User-Defined Effects: Effect Handlers,
|
|
|
|
|
Monadic Reflection, Delimited Control},
|
|
|
|
|
journal = {{PACMPL}},
|
|
|
|
|
volume = {1},
|
|
|
|
|
number = {ICFP},
|
|
|
|
|
articleno = {13},
|
|
|
|
|
numpages = {29},
|
|
|
|
|
month = sep,
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{ForsterKLP19,
|
|
|
|
|
author = {Yannick Forster and
|
|
|
|
|
Ohad Kammar and
|
|
|
|
|
Sam Lindley and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {On the expressive power of user-defined effects: Effect handlers,
|
|
|
|
|
monadic reflection, delimited control},
|
|
|
|
|
journal = {J. Funct. Program.},
|
|
|
|
|
volume = {29},
|
|
|
|
|
pages = {e15},
|
|
|
|
|
year = {2019}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{HillerstromLL20,
|
|
|
|
|
author = {Daniel Hillerstr{\"{o}}m and
|
|
|
|
|
Sam Lindley and
|
|
|
|
|
John Longley},
|
|
|
|
|
title = {Effects for Efficiency: Asymptotic Speedup with First-Class Control},
|
|
|
|
|
journal = {Proc. {ACM} Program. Lang.},
|
|
|
|
|
volume = {4},
|
|
|
|
|
number = {{ICFP}},
|
|
|
|
|
pages = {100:1--100:29},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@phdthesis{McLaughlin20,
|
|
|
|
|
author = {Craig McLaughlin},
|
|
|
|
|
title = {Relational Reasoning for Effects and Handlers},
|
|
|
|
|
school = {The University of Edinburgh, {UK}},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@phdthesis{Ahman17,
|
|
|
|
|
author = {Danel Ahman},
|
|
|
|
|
title = {Fibred Computational Effects},
|
|
|
|
|
school = {The University of Edinburgh, {UK}},
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@phdthesis{Fowler19,
|
|
|
|
|
author = {Simon Fowler},
|
|
|
|
|
title = {Typed concurrent functional programming with channels, actors and sessions},
|
|
|
|
|
school = {The University of Edinburgh, {UK}},
|
|
|
|
|
year = {2019}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@phdthesis{Kammar14,
|
|
|
|
|
author = {Ohad Kammar},
|
|
|
|
|
title = {Algebraic theory of type-and-effect systems},
|
|
|
|
|
school = {The University of Edinburgh, {UK}},
|
|
|
|
|
year = {2014}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{KammarP12,
|
|
|
|
|
author = {Ohad Kammar and
|
|
|
|
|
Gordon D. Plotkin},
|
|
|
|
|
title = {Algebraic foundations for effect-dependent optimisations},
|
|
|
|
|
booktitle = {{POPL}},
|
|
|
|
|
pages = {349--360},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2012}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{LuksicP20,
|
|
|
|
|
author = {Ziga Luksic and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {Local algebraic effect theories},
|
|
|
|
|
journal = {J. Funct. Program.},
|
|
|
|
|
volume = {30},
|
|
|
|
|
pages = {e13},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@phdthesis{Brachthauser20,
|
|
|
|
|
author = {Jonathan Immanuel Brachth{\"{a}}user},
|
|
|
|
|
title = {Design and Implementation of Effect Handlers for Object-Oriented Programming
|
|
|
|
|
Languages},
|
|
|
|
|
school = {University of T{\"{u}}bingen, Germany},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{XieBHSL20,
|
|
|
|
|
author = {Ningning Xie and
|
|
|
|
|
Jonathan Immanuel Brachth{\"{a}}user and
|
|
|
|
|
Daniel Hillerstr{\"{o}}m and
|
|
|
|
|
Philipp Schuster and
|
|
|
|
|
Daan Leijen},
|
|
|
|
|
title = {Effect handlers, evidently},
|
|
|
|
|
journal = {Proc. {ACM} Program. Lang.},
|
|
|
|
|
volume = {4},
|
|
|
|
|
number = {{ICFP}},
|
|
|
|
|
pages = {99:1--99:29},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Asynchronous effects
|
|
|
|
|
@article{AhmanP20,
|
|
|
|
|
author = {Danel Ahman and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {Asynchronous effects},
|
|
|
|
|
journal = {CoRR},
|
|
|
|
|
volume = {abs/2003.02110},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@MastersThesis{Poulson20,
|
|
|
|
|
author = {Leo Poulson},
|
|
|
|
|
title = {Asynchronous Effect Handling},
|
|
|
|
|
school = {School of Informatics, The University of Edinburgh},
|
|
|
|
|
address = {Scotland},
|
|
|
|
|
year = 2020,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Effekt
|
|
|
|
|
@article{BrachthauserSO18,
|
|
|
|
|
author = {Jonathan Immanuel Brachth{\"{a}}user and
|
|
|
|
|
Philipp Schuster and
|
|
|
|
|
Klaus Ostermann},
|
|
|
|
|
title = {Effect handlers for the masses},
|
|
|
|
|
journal = {Proc. {ACM} Program. Lang.},
|
|
|
|
|
volume = {2},
|
|
|
|
|
number = {{OOPSLA}},
|
|
|
|
|
pages = {111:1--111:27},
|
|
|
|
|
year = {2018}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{BrachthauserS17,
|
|
|
|
|
author = {Jonathan Immanuel Brachth{\"{a}}user and
|
|
|
|
|
Philipp Schuster},
|
|
|
|
|
title = {Effekt: extensible algebraic effects in Scala (short paper)},
|
|
|
|
|
booktitle = {SCALA@SPLASH},
|
|
|
|
|
pages = {67--72},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{SchusterBO20,
|
|
|
|
|
author = {Philipp Schuster and
|
|
|
|
|
Jonathan Immanuel Brachth{\"{a}}user and
|
|
|
|
|
Klaus Ostermann},
|
|
|
|
|
title = {Compiling effect handlers in capability-passing style},
|
|
|
|
|
journal = {Proc. {ACM} Program. Lang.},
|
|
|
|
|
volume = {4},
|
|
|
|
|
number = {{ICFP}},
|
|
|
|
|
pages = {93:1--93:28},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Eff
|
|
|
|
|
@article{BauerP15,
|
|
|
|
|
author = {Andrej Bauer and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {Programming with algebraic effects and handlers},
|
|
|
|
|
journal = {J. Log. Algebr. Meth. Program.},
|
|
|
|
|
volume = {84},
|
|
|
|
|
number = {1},
|
|
|
|
|
pages = {108--123},
|
|
|
|
|
year = {2015}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{BauerP13,
|
|
|
|
|
author = {Andrej Bauer and
|
|
|
|
|
Matija Pretnar},
|
|
|
|
|
title = {An Effect System for Algebraic Effects and Handlers},
|
|
|
|
|
journal = {Log. Methods Comput. Sci.},
|
|
|
|
|
volume = {10},
|
|
|
|
|
number = {4},
|
|
|
|
|
year = {2014}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{Pretnar13,
|
|
|
|
|
author = {Matija Pretnar},
|
|
|
|
|
title = {Inferring Algebraic Effects},
|
|
|
|
|
journal = {Log. Methods Comput. Sci.},
|
|
|
|
|
volume = {10},
|
|
|
|
|
number = {3},
|
|
|
|
|
year = {2014}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Co-handlers
|
|
|
|
|
@inproceedings{AhmanB20,
|
|
|
|
|
author = {Danel Ahman and
|
|
|
|
|
Andrej Bauer},
|
|
|
|
|
title = {Runners in Action},
|
|
|
|
|
booktitle = {{ESOP}},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {12075},
|
|
|
|
|
pages = {29--55},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Idris
|
|
|
|
|
@inproceedings{Brady13,
|
|
|
|
|
author = {Edwin Brady},
|
|
|
|
|
title = {Programming and reasoning with algebraic effects and dependent types},
|
|
|
|
|
booktitle = {{ICFP}},
|
|
|
|
|
pages = {133--144},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2013}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Brady14,
|
|
|
|
|
author = {Edwin Brady},
|
|
|
|
|
title = {Resource-Dependent Algebraic Effects},
|
|
|
|
|
booktitle = {Trends in Functional Programming},
|
|
|
|
|
OPTseries = {Lecture Notes in Computer Science},
|
|
|
|
|
series = {LNCS},
|
|
|
|
|
volume = {8843},
|
|
|
|
|
pages = {18--33},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2014}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Leo's HOPE talk
|
|
|
|
|
@misc{White16,
|
|
|
|
|
author = {Leo White},
|
|
|
|
|
title = {Effective programming: bringing algebraic effects and handlers to {OCaml}},
|
|
|
|
|
year = 2016,
|
|
|
|
|
optmonth = sep,
|
|
|
|
|
howpublished = {Keynote at {HOPE}, Nara, Japan}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Implementation of effect handlers in Links
|
|
|
|
|
@inproceedings{HillerstromL16,
|
|
|
|
|
author = {Daniel Hillerstr{\"{o}}m and
|
|
|
|
|
Sam Lindley},
|
|
|
|
|
title = {Liberating effects with rows and handlers},
|
|
|
|
|
booktitle = {TyDe@ICFP},
|
|
|
|
|
pages = {15--27},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2016}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Frank
|
|
|
|
|
@inproceedings{LindleyMM17,
|
|
|
|
|
author = {Sam Lindley and
|
|
|
|
|
Conor McBride and
|
|
|
|
|
Craig McLaughlin},
|
|
|
|
|
title = {Do be do be do},
|
|
|
|
|
booktitle = {{POPL}},
|
|
|
|
|
pages = {500--514},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Shonky
|
|
|
|
|
@misc{McBride16,
|
|
|
|
|
title={Shonky},
|
|
|
|
|
author={Conor McBride},
|
|
|
|
|
year=2016,
|
|
|
|
|
note={\url{https://github.com/pigworker/shonky}}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Koka
|
|
|
|
|
@inproceedings{Leijen14,
|
|
|
|
|
author = {Daan Leijen},
|
|
|
|
|
title = {{Koka}: Programming with Row Polymorphic Effect Types},
|
|
|
|
|
booktitle = {{MSFP}},
|
|
|
|
|
series = {{EPTCS}},
|
|
|
|
|
volume = {153},
|
|
|
|
|
pages = {100--126},
|
|
|
|
|
year = {2014}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Leijen17,
|
|
|
|
|
author = {Daan Leijen},
|
|
|
|
|
title = {Type directed compilation of row-typed algebraic effects},
|
|
|
|
|
booktitle = {{POPL}},
|
|
|
|
|
pages = {486--499},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Haskell implementations
|
|
|
|
|
@inproceedings{KiselyovSS13,
|
|
|
|
|
author = {Oleg Kiselyov and
|
|
|
|
|
Amr Sabry and
|
|
|
|
|
Cameron Swords},
|
|
|
|
|
title = {Extensible effects: an alternative to monad transformers},
|
|
|
|
|
booktitle = {Haskell},
|
|
|
|
|
pages = {59--70},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2013}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{KiselyovI15,
|
|
|
|
|
author = {Oleg Kiselyov and
|
|
|
|
|
Hiromi Ishii},
|
|
|
|
|
title = {Freer monads, more extensible effects},
|
|
|
|
|
booktitle = {Haskell},
|
|
|
|
|
pages = {94--105},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2015}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@inproceedings{KammarLO13,
|
|
|
|
|
author = {Ohad Kammar and
|
|
|
|
|
Sam Lindley and
|
|
|
|
|
Nicolas Oury},
|
|
|
|
|
title = {Handlers in action},
|
|
|
|
|
booktitle = {{ICFP}},
|
|
|
|
|
pages = {145--158},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2013}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{WuSH14,
|
|
|
|
|
author = {Nicolas Wu and
|
|
|
|
|
Tom Schrijvers and
|
|
|
|
|
Ralf Hinze},
|
|
|
|
|
editor = {Wouter Swierstra},
|
|
|
|
|
title = {Effect handlers in scope},
|
|
|
|
|
booktitle = {Proceedings of the 2014 {ACM} {SIGPLAN} symposium on Haskell, Gothenburg,
|
|
|
|
|
Sweden, September 4-5, 2014},
|
|
|
|
|
pages = {1--12},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2014},
|
|
|
|
|
url = {http://doi.acm.org/10.1145/2633357.2633358},
|
|
|
|
|
doi = {10.1145/2633357.2633358},
|
|
|
|
|
timestamp = {Mon, 08 Sep 2014 16:12:17 +0200},
|
|
|
|
|
biburl = {http://dblp.uni-trier.de/rec/bib/conf/haskell/WuSH14},
|
|
|
|
|
bibsource = {dblp computer science bibliography, http://dblp.org}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{WuS15,
|
|
|
|
|
author = {Nicolas Wu and
|
|
|
|
|
Tom Schrijvers},
|
|
|
|
|
title = {Fusion for Free - Efficient Algebraic Effect Handlers},
|
|
|
|
|
booktitle = {{MPC}},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {9129},
|
|
|
|
|
pages = {302--322},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2015}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Prolog
|
|
|
|
|
@article{SchrijversDDW13,
|
|
|
|
|
author = {Tom Schrijvers and
|
|
|
|
|
Bart Demoen and
|
|
|
|
|
Benoit Desouter and
|
|
|
|
|
Jan Wielemaker},
|
|
|
|
|
title = {Delimited continuations for {Prolog}},
|
|
|
|
|
journal = {{TPLP}},
|
|
|
|
|
volume = {13},
|
|
|
|
|
number = {4-5},
|
|
|
|
|
pages = {533--546},
|
|
|
|
|
year = {2013}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{SalehS16,
|
|
|
|
|
author = {Amr Hany Saleh and
|
|
|
|
|
Tom Schrijvers},
|
|
|
|
|
title = {Efficient Algebraic Effect Handlers for {Prolog}},
|
|
|
|
|
journal = {{TPLP}},
|
|
|
|
|
year = {2016},
|
|
|
|
|
note = {Proceedings of {ICLP}}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# References on Links
|
|
|
|
|
@inproceedings{CooperLWY06,
|
|
|
|
|
author = {Ezra Cooper and
|
|
|
|
|
Sam Lindley and
|
|
|
|
|
Philip Wadler and
|
|
|
|
|
Jeremy Yallop},
|
|
|
|
|
title = {Links: Web Programming Without Tiers},
|
|
|
|
|
booktitle = {{FMCO}},
|
|
|
|
|
OPTseries = {Lecture Notes in Computer Science},
|
|
|
|
|
series = {LNCS},
|
|
|
|
|
volume = {4709},
|
|
|
|
|
pages = {266--296},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2006}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{LindleyC12,
|
|
|
|
|
author = {Sam Lindley and
|
|
|
|
|
James Cheney},
|
|
|
|
|
title = {Row-based effect types for database integration},
|
|
|
|
|
booktitle = {{TLDI}},
|
|
|
|
|
pages = {91--102},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2012}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Monads
|
|
|
|
|
@article{Atkey09,
|
|
|
|
|
author = {Robert Atkey},
|
|
|
|
|
title = {Parameterised notions of computation},
|
|
|
|
|
journal = {Journal of Functional Programming},
|
|
|
|
|
volume = {19},
|
|
|
|
|
number = {3-4},
|
|
|
|
|
pages = {335--376},
|
|
|
|
|
year = {2009}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Moggi89,
|
|
|
|
|
author = {Eugenio Moggi},
|
|
|
|
|
title = {Computational Lambda-Calculus and Monads},
|
|
|
|
|
booktitle = {{LICS}},
|
|
|
|
|
pages = {14--23},
|
|
|
|
|
publisher = {{IEEE} Computer Society},
|
|
|
|
|
year = {1989}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{Moggi91,
|
|
|
|
|
author = {Eugenio Moggi},
|
|
|
|
|
title = {Notions of Computation and Monads},
|
|
|
|
|
journal = {Inf. Comput.},
|
|
|
|
|
volume = {93},
|
|
|
|
|
number = {1},
|
|
|
|
|
pages = {55--92},
|
|
|
|
|
year = {1991}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Wadler92,
|
|
|
|
|
author = {Philip Wadler},
|
|
|
|
|
title = {The Essence of Functional Programming},
|
|
|
|
|
booktitle = {{POPL}},
|
|
|
|
|
pages = {1--14},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {1992}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Wadler95,
|
|
|
|
|
author = {Philip Wadler},
|
|
|
|
|
title = {Monads for Functional Programming},
|
|
|
|
|
booktitle = {Advanced Functional Programming},
|
|
|
|
|
OPTseries = {Lecture Notes in Computer Science},
|
|
|
|
|
series = {LNCS},
|
|
|
|
|
volume = {925},
|
|
|
|
|
pages = {24--52},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {1995}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{Swierstra08,
|
|
|
|
|
author = {Wouter Swierstra},
|
|
|
|
|
title = {Data types {\`{a}} la carte},
|
|
|
|
|
journal = {Journal of Functional Programming},
|
|
|
|
|
volume = {18},
|
|
|
|
|
number = {4},
|
|
|
|
|
pages = {423--436},
|
|
|
|
|
year = {2008}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{PauwelsSM19,
|
|
|
|
|
author = {Koen Pauwels and
|
|
|
|
|
Tom Schrijvers and
|
|
|
|
|
Shin{-}Cheng Mu},
|
|
|
|
|
title = {Handling Local State with Global State},
|
|
|
|
|
booktitle = {{MPC}},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {11825},
|
|
|
|
|
pages = {18--44},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2019}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Hop.js
|
|
|
|
|
@inproceedings{SerranoP16,
|
|
|
|
|
author = {Manuel Serrano and
|
|
|
|
|
Vincent Prunet},
|
|
|
|
|
title = {A glimpse of Hopjs},
|
|
|
|
|
booktitle = {{ICFP}},
|
|
|
|
|
pages = {180--192},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2016}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# A-normal form
|
|
|
|
|
@inproceedings{FlanaganSDF93,
|
|
|
|
|
author = {Cormac Flanagan and
|
|
|
|
|
Amr Sabry and
|
|
|
|
|
Bruce F. Duba and
|
|
|
|
|
Matthias Felleisen},
|
|
|
|
|
title = {The Essence of Compiling with Continuations},
|
|
|
|
|
booktitle = {{PLDI}},
|
|
|
|
|
pages = {237--247},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {1993}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{SabryW96,
|
|
|
|
|
author = {Amr Sabry and
|
|
|
|
|
Philip Wadler},
|
|
|
|
|
editor = {Robert Harper and
|
|
|
|
|
Richard L. Wexelblat},
|
|
|
|
|
title = {A Reflection on Call-by-Value},
|
|
|
|
|
booktitle = {Proceedings of the 1996 {ACM} {SIGPLAN} International Conference on
|
|
|
|
|
Functional Programming {(ICFP} '96), Philadelphia, Pennsylvania, May
|
|
|
|
|
24-26, 1996.},
|
|
|
|
|
pages = {13--24},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {1996},
|
|
|
|
|
OPTurl = {http://doi.acm.org/10.1145/232627.232631},
|
|
|
|
|
OPTdoi = {10.1145/232627.232631},
|
|
|
|
|
timestamp = {Tue, 11 Jun 2013 13:54:16 +0200},
|
|
|
|
|
biburl = {http://dblp.uni-trier.de/rec/bib/conf/icfp/SabryW96},
|
|
|
|
|
bibsource = {dblp computer science bibliography, http://dblp.org}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# fine-grained call-by-value
|
|
|
|
|
@article{LevyPT03,
|
|
|
|
|
author = {Paul Blain Levy and
|
|
|
|
|
John Power and
|
|
|
|
|
Hayo Thielecke},
|
|
|
|
|
title = {Modelling environments in call-by-value programming languages},
|
|
|
|
|
journal = {Inf. Comput.},
|
|
|
|
|
volume = {185},
|
|
|
|
|
number = {2},
|
|
|
|
|
pages = {182--210},
|
|
|
|
|
year = {2003}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# CPS
|
|
|
|
|
@article{Plotkin75,
|
|
|
|
|
author = {Gordon D. Plotkin},
|
|
|
|
|
title = {Call-by-Name, Call-by-Value and the lambda-Calculus},
|
|
|
|
|
journal = {Theor. Comput. Sci.},
|
|
|
|
|
volume = {1},
|
|
|
|
|
number = {2},
|
|
|
|
|
pages = {125--159},
|
|
|
|
|
year = {1975}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@techreport{Steele78,
|
|
|
|
|
title = {{RABBIT}: A Compiler for {SCHEME} (A Study in Compiler Optimization)},
|
|
|
|
|
author = {Guy L. Steele},
|
|
|
|
|
institution = {{MIT}},
|
|
|
|
|
number = {TR-474},
|
|
|
|
|
year = {1978},
|
|
|
|
|
month = may,
|
|
|
|
|
address = {Cambridge, Massachusetts, USA}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{DanvyF90,
|
|
|
|
|
author = {Olivier Danvy and
|
|
|
|
|
Andrzej Filinski},
|
|
|
|
|
title = {Abstracting Control},
|
|
|
|
|
booktitle = {{LISP} and Functional Programming},
|
|
|
|
|
pages = {151--160},
|
|
|
|
|
year = {1990}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{DanvyF92,
|
|
|
|
|
author = {Olivier Danvy and
|
|
|
|
|
Andrzej Filinski},
|
|
|
|
|
title = {Representing Control: {A} Study of the {CPS} Transformation},
|
|
|
|
|
journal = {Mathematical Structures in Computer Science},
|
|
|
|
|
volume = {2},
|
|
|
|
|
number = {4},
|
|
|
|
|
pages = {361--391},
|
|
|
|
|
year = {1992}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@phdthesis{Danvy06,
|
|
|
|
|
author = {Olivier Danvy},
|
|
|
|
|
school = {Aarhus University},
|
|
|
|
|
title = {An Analytical Approach to Programs as Data Objects},
|
|
|
|
|
type = {{DSc} thesis},
|
|
|
|
|
year = 2006,
|
|
|
|
|
address = {Aarhus, Denmark}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@book{Appel92,
|
|
|
|
|
author = {Andrew W. Appel},
|
|
|
|
|
title = {Compiling with Continuations},
|
|
|
|
|
publisher = {Cambridge University Press},
|
|
|
|
|
year = {1992}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{DanvyN03,
|
|
|
|
|
author = {Olivier Danvy and
|
|
|
|
|
Lasse R. Nielsen},
|
|
|
|
|
title = {A first-order one-pass {CPS} transformation},
|
|
|
|
|
journal = {Theor. Comput. Sci.},
|
|
|
|
|
volume = {308},
|
|
|
|
|
number = {1-3},
|
|
|
|
|
pages = {239--257},
|
|
|
|
|
year = {2003}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Kennedy07,
|
|
|
|
|
author = {Andrew Kennedy},
|
|
|
|
|
title = {Compiling with continuations, continued},
|
|
|
|
|
booktitle = {{ICFP}},
|
|
|
|
|
pages = {177--190},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2007}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{MaterzokB11,
|
|
|
|
|
author = {Marek Materzok and
|
|
|
|
|
Dariusz Biernacki},
|
|
|
|
|
title = {Subtyping delimited continuations},
|
|
|
|
|
booktitle = {{ICFP}},
|
|
|
|
|
pages = {81--93},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2011}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{MaterzokB12,
|
|
|
|
|
author = {Marek Materzok and
|
|
|
|
|
Dariusz Biernacki},
|
|
|
|
|
title = {A Dynamic Interpretation of the {CPS} Hierarchy},
|
|
|
|
|
booktitle = {{APLAS}},
|
|
|
|
|
OPTseries = {Lecture Notes in Computer Science},
|
|
|
|
|
series = {LNCS},
|
|
|
|
|
volume = {7705},
|
|
|
|
|
pages = {296--311},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2012}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Misc{KiselyovS16,
|
|
|
|
|
author = {Oleg Kiselyov and {KC} Sivaramakrishnan},
|
|
|
|
|
title = {Eff directly in {OCaml}},
|
|
|
|
|
year = {2016},
|
|
|
|
|
optmonth = sep,
|
|
|
|
|
howpublished = {{ML Workshop}}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Delimited Control
|
|
|
|
|
@inproceedings{KiselyovSS06,
|
|
|
|
|
author = {Oleg Kiselyov and
|
|
|
|
|
Chung{-}chieh Shan and
|
|
|
|
|
Amr Sabry},
|
|
|
|
|
title = {Delimited dynamic binding},
|
|
|
|
|
booktitle = {{ICFP}},
|
|
|
|
|
pages = {26--37},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {2006}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# fancy row typing systems that support shapes
|
|
|
|
|
@inproceedings{BerthomieuS95,
|
|
|
|
|
author = {Bernard Berthomieu and Camille le Moniès de Sagazan},
|
|
|
|
|
title = {A Calculus of Tagged Types, with applications to process languages},
|
|
|
|
|
booktitle = {Workshop on Types for Program Analysis},
|
|
|
|
|
year = 1995,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@techreport{Remy93,
|
|
|
|
|
title = {{Syntactic theories and the algebra of record terms}},
|
|
|
|
|
author = {Didier Remy},
|
|
|
|
|
number = {RR-1869},
|
|
|
|
|
institution = {{INRIA}},
|
|
|
|
|
year = {1993},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Zipper data structure.
|
|
|
|
|
@article{Huet97,
|
|
|
|
|
author = {G{\'{e}}rard P. Huet},
|
|
|
|
|
title = {The Zipper},
|
|
|
|
|
journal = {J. Funct. Program.},
|
|
|
|
|
volume = {7},
|
|
|
|
|
number = {5},
|
|
|
|
|
pages = {549--554},
|
|
|
|
|
year = {1997},
|
|
|
|
|
OPTurl = {http://journals.cambridge.org/action/displayAbstract?aid=44121},
|
|
|
|
|
timestamp = {Fri, 10 Jun 2011 14:42:10 +0200},
|
|
|
|
|
biburl = {http://dblp.uni-trier.de/rec/bib/journals/jfp/Huet97},
|
|
|
|
|
bibsource = {dblp computer science bibliography, http://dblp.org}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@article{Hughes00,
|
|
|
|
|
author = {John Hughes},
|
|
|
|
|
title = {Generalising monads to arrows},
|
|
|
|
|
journal = {Sci. Comput. Program.},
|
|
|
|
|
volume = {37},
|
|
|
|
|
number = {1-3},
|
|
|
|
|
pages = {67--111},
|
|
|
|
|
year = {2000}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# CPS for effect handlers
|
|
|
|
|
@inproceedings{HillerstromLAS17,
|
|
|
|
|
author = {Daniel Hillerstr{\"{o}}m and
|
|
|
|
|
Sam Lindley and
|
|
|
|
|
Robert Atkey and
|
|
|
|
|
{KC} Sivaramakrishnan},
|
|
|
|
|
title = {Continuation Passing Style for Effect Handlers},
|
|
|
|
|
booktitle = {{FSCD}},
|
|
|
|
|
series = {LIPIcs},
|
|
|
|
|
volume = {84},
|
|
|
|
|
pages = {18:1--18:19},
|
|
|
|
|
OPTpublisher = {Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik},
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{HillerstromL18,
|
|
|
|
|
author = {Daniel Hillerstr{\"{o}}m and
|
|
|
|
|
Sam Lindley},
|
|
|
|
|
title = {Shallow Effect Handlers},
|
|
|
|
|
booktitle = {{APLAS}},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {11275},
|
|
|
|
|
pages = {415--435},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2018}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{HillerstromLA20,
|
|
|
|
|
author = {Daniel Hillerstr{\"{o}}m and
|
|
|
|
|
Sam Lindley and
|
|
|
|
|
Robert Atkey},
|
|
|
|
|
title = {Effect handlers via generalised continuations},
|
|
|
|
|
journal = {J. Funct. Program.},
|
|
|
|
|
volume = {30},
|
|
|
|
|
pages = {e5},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# CEK
|
|
|
|
|
@InProceedings{FelleisenF86,
|
|
|
|
|
title={Control Operators, the {SECD}-machine, and the $\lambda$-Calculus},
|
|
|
|
|
author={Felleisen, Matthias and Friedman, Daniel P.},
|
|
|
|
|
year=1987,
|
|
|
|
|
booktitle = {Formal Description of Programming Concepts III},
|
|
|
|
|
OPTbooktitle = {The Proceedings of the Conference on Formal Description of Programming Concepts III, Ebberup, Denmark},
|
|
|
|
|
pages = {193--217},
|
|
|
|
|
OPTpublisher={North Holland}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{BiernackiPPS18,
|
|
|
|
|
author = {Dariusz Biernacki and
|
|
|
|
|
Maciej Pir{\'{o}}g and
|
|
|
|
|
Piotr Polesiuk and
|
|
|
|
|
Filip Sieczkowski},
|
|
|
|
|
title = {Handle with care: relational interpretation of algebraic effects and
|
|
|
|
|
handlers},
|
|
|
|
|
journal = {{PACMPL}},
|
|
|
|
|
volume = {2},
|
|
|
|
|
number = {{POPL}},
|
|
|
|
|
pages = {8:1--8:30},
|
|
|
|
|
year = {2018}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# explicit effect subtyping
|
|
|
|
|
@inproceedings{SalehKPS18,
|
|
|
|
|
author = {Amr Hany Saleh and
|
|
|
|
|
Georgios Karachalias and
|
|
|
|
|
Matija Pretnar and
|
|
|
|
|
Tom Schrijvers},
|
|
|
|
|
title = {Explicit Effect Subtyping},
|
|
|
|
|
booktitle = {{ESOP}},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {10801},
|
|
|
|
|
pages = {327--354},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2018}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{KarachaliasPSVS20,
|
|
|
|
|
author = {Georgios Karachalias and
|
|
|
|
|
Matija Pretnar and
|
|
|
|
|
Amr Hany Saleh and
|
|
|
|
|
Stien Vanderhallen and
|
|
|
|
|
Tom Schrijvers},
|
|
|
|
|
title = {Explicit effect subtyping},
|
|
|
|
|
journal = {J. Funct. Program.},
|
|
|
|
|
volume = {30},
|
|
|
|
|
pages = {e15},
|
|
|
|
|
year = {2020}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Pyro
|
|
|
|
|
@Misc{Goodman17,
|
|
|
|
|
author = {Noah Goodman},
|
|
|
|
|
title = {Uber {AI} {Labs} Open Sources {Pyro}, a Deep Probabilistic Programming Language},
|
|
|
|
|
month = nov,
|
|
|
|
|
year = 2017,
|
|
|
|
|
url = {https://eng.uber.com/pyro/}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Meta programming
|
|
|
|
|
@article{Yallop17,
|
|
|
|
|
author = {Jeremy Yallop},
|
|
|
|
|
title = {Staged generic programming},
|
|
|
|
|
journal = {{PACMPL}},
|
|
|
|
|
volume = {1},
|
|
|
|
|
number = {{ICFP}},
|
|
|
|
|
pages = {29:1--29:29},
|
|
|
|
|
year = {2017}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# SML
|
|
|
|
|
@book{MilnerTHM97,
|
|
|
|
|
author = {Robin Milner and Mads Tofte and Robert Harper and David Macqueen},
|
|
|
|
|
title = {The Definition of {Standard} {ML}},
|
|
|
|
|
year = {1997},
|
|
|
|
|
isbn = {0262631814},
|
|
|
|
|
publisher = {MIT Press},
|
|
|
|
|
address = {Cambridge, MA, USA},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# OCaml
|
|
|
|
|
@book{LeroyDFGRV20,
|
|
|
|
|
author = {Xavier Leroy and Damien Doligez and Alain Frisch and Jacques Garrigue and Didier Rémy and Jérôme Vouillon},
|
|
|
|
|
title = {The {OCaml} System Release 4.11: Documentation and user's manual},
|
|
|
|
|
year = 2020,
|
|
|
|
|
month = aug,
|
|
|
|
|
publisher = {Institut National de Recherche en Informatique et en Automatique}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Lisp
|
|
|
|
|
@article{McCarthy60,
|
|
|
|
|
author = {John McCarthy},
|
|
|
|
|
title = {Recursive Functions of Symbolic Expressions and Their Computation
|
|
|
|
|
by Machine, Part {I}},
|
|
|
|
|
journal = {Commun. {ACM}},
|
|
|
|
|
volume = {3},
|
|
|
|
|
number = {4},
|
|
|
|
|
pages = {184--195},
|
|
|
|
|
year = {1960}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Elisp
|
|
|
|
|
@book{LewisLSG20,
|
|
|
|
|
author = {Bil Lewis and Dan {LaLiberte} and Richard Stallman and {the GNU Manual Group} and {et al.}},
|
|
|
|
|
title = {{GNU} {Emacs} {Lisp} Reference Manual},
|
|
|
|
|
year = 2020,
|
|
|
|
|
note = {For {Emacs} version 27.1},
|
|
|
|
|
publisher = {Free Software Foundation},
|
|
|
|
|
address = {Boston, MA, USA},
|
|
|
|
|
isbn = {1882114744}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Scheme
|
|
|
|
|
@techreport{SussmanS75,
|
|
|
|
|
author = {Gerald Jay Sussman and Guy Lewis Steele Jr.},
|
|
|
|
|
institution = {{MIT}},
|
|
|
|
|
month = {December},
|
|
|
|
|
number = {AI Memo No. 349},
|
|
|
|
|
title = {Scheme: An Interpreter for Extended Lambda Calculus},
|
|
|
|
|
OPTuri = {ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-349.pdf},
|
|
|
|
|
year = 1975
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@book{SperberDFSFM10,
|
|
|
|
|
author = {Michael Sperber and
|
|
|
|
|
R. Kent Dybvig and
|
|
|
|
|
Matthew Flatt and
|
|
|
|
|
Anton van Straaten and
|
|
|
|
|
Robert Bruce Findler and
|
|
|
|
|
Jacob Matthews},
|
|
|
|
|
title = {Revised6 Report on the Algorithmic Language Scheme},
|
|
|
|
|
publisher = {Cambridge University Press},
|
|
|
|
|
year = {2010}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Haskell
|
|
|
|
|
@misc{JonesABBBFHHHHJJLMPRRW99,
|
|
|
|
|
author = {Simon Peyton Jones
|
|
|
|
|
and Lennart Augustsson
|
|
|
|
|
and Dave Barton
|
|
|
|
|
and Brian Boutel
|
|
|
|
|
and Warren Burton
|
|
|
|
|
and Joseph Fasel
|
|
|
|
|
and Kevin Hammond
|
|
|
|
|
and Ralf Hinze
|
|
|
|
|
and Paul Hudak
|
|
|
|
|
and John Hughes
|
|
|
|
|
and Thomas Johnsson
|
|
|
|
|
and Mark Jones
|
|
|
|
|
and John Launchbury
|
|
|
|
|
and Erik Meijer
|
|
|
|
|
and John Peterson
|
|
|
|
|
and Alastair Reid
|
|
|
|
|
and Colin Runciman
|
|
|
|
|
and Philip Wadler},
|
|
|
|
|
title = {Haskell 98: A non-strict, purely functional language},
|
|
|
|
|
OPTurl = {https://www.haskell.org/definition/},
|
|
|
|
|
year = {1999}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@book{Haskell98,
|
|
|
|
|
editor = {Jones, Simon Peyton},
|
|
|
|
|
month = sep,
|
|
|
|
|
pages = 277,
|
|
|
|
|
publisher = {http://haskell.org/},
|
|
|
|
|
title = {{Haskell} 98 Language and Libraries: The Revised Report},
|
|
|
|
|
type = {Language Definition},
|
|
|
|
|
OPTurl = {http://haskell.org/definition/haskell98-report.pdf},
|
|
|
|
|
year = 2002
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@book{Haskell10,
|
|
|
|
|
editor = {Simon Marlow},
|
|
|
|
|
title = {Haskell 2010 Language Report},
|
|
|
|
|
year = 2010
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Structural Operational Semantics
|
|
|
|
|
@article{Plotkin04a,
|
|
|
|
|
author = {Gordon D. Plotkin},
|
|
|
|
|
title = {A structural approach to operational semantics},
|
|
|
|
|
journal = {J. Log. Algebr. Program.},
|
|
|
|
|
volume = {60-61},
|
|
|
|
|
pages = {17--139},
|
|
|
|
|
year = {2004},
|
|
|
|
|
timestamp = {Mon, 21 Feb 2005 12:50:35 +0100},
|
|
|
|
|
biburl = {https://dblp.org/rec/bib/journals/jlp/Plotkin04a},
|
|
|
|
|
bibsource = {dblp computer science bibliography, https://dblp.org}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Regular expressions
|
|
|
|
|
@incollection{Kleene56,
|
|
|
|
|
author = {Stephen Cole Kleene},
|
|
|
|
|
title = {Representation of events in nerve nets and finite automata},
|
|
|
|
|
booktitle = {Automata Studies},
|
|
|
|
|
editor = {Shannon, Claude and McCarthy, John},
|
|
|
|
|
pages = {3--41},
|
|
|
|
|
year = 1956,
|
|
|
|
|
publisher = {Princeton University Press},
|
|
|
|
|
address = {Princeton, NJ, USA}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Felleisen's PhD thesis (evaluation contexts)
|
|
|
|
|
@phdthesis{Felleisen87,
|
|
|
|
|
author = {Matthias Felleisen},
|
|
|
|
|
title = {The Calculi of Lambda-nu-cs Conversion: A Syntactic Theory of Control and State in Imperative Higher-order Programming Languages},
|
|
|
|
|
year = {1987},
|
|
|
|
|
note = {AAI8727494},
|
|
|
|
|
publisher = {Indiana University},
|
|
|
|
|
address = {Indianapolis, IN, USA},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# The original lambda calculus reference
|
|
|
|
|
@InProceedings{Church32,
|
|
|
|
|
author = {Alonzo Church},
|
|
|
|
|
title = {A Set of Postulates for the Foundation of Logic},
|
|
|
|
|
year = {1932},
|
|
|
|
|
booktitle = {Annals of Mathematics},
|
|
|
|
|
pages = {346--366},
|
|
|
|
|
volume = {33}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Termination analysis.
|
|
|
|
|
@article{Walther94,
|
|
|
|
|
author = {Christoph Walther},
|
|
|
|
|
title = {On Proving the Termination of Algorithms by Machine},
|
|
|
|
|
journal = {Artif. Intell.},
|
|
|
|
|
volume = {71},
|
|
|
|
|
number = {1},
|
|
|
|
|
pages = {101--157},
|
|
|
|
|
year = {1994}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Landin's J operator
|
|
|
|
|
@article{Landin65,
|
|
|
|
|
author = {Peter J. Landin},
|
|
|
|
|
title = {Correspondence between {ALGOL} 60 and Church's Lambda-notation: part
|
|
|
|
|
{I}},
|
|
|
|
|
journal = {Commun. {ACM}},
|
|
|
|
|
volume = {8},
|
|
|
|
|
number = {2},
|
|
|
|
|
pages = {89--101},
|
|
|
|
|
year = {1965}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{Landin65a,
|
|
|
|
|
author = {Peter J. Landin},
|
|
|
|
|
title = {A correspondence between {ALGOL} 60 and Church's Lambda-notations:
|
|
|
|
|
Part {II}},
|
|
|
|
|
journal = {Commun. {ACM}},
|
|
|
|
|
volume = {8},
|
|
|
|
|
number = {3},
|
|
|
|
|
pages = {158--167},
|
|
|
|
|
year = {1965}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{Landin98,
|
|
|
|
|
author = {Peter J. Landin},
|
|
|
|
|
title = {A Generalization of Jumps and Labels},
|
|
|
|
|
journal = {Higher-Order and Symbolic Computation},
|
|
|
|
|
volume = {11},
|
|
|
|
|
number = {2},
|
|
|
|
|
pages = {125--143},
|
|
|
|
|
year = {1998}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@article{DanvyM08,
|
|
|
|
|
author = {Olivier Danvy and
|
|
|
|
|
Kevin Millikin},
|
|
|
|
|
title = {A Rational Deconstruction of Landin's {SECD} Machine with the {J}
|
|
|
|
|
Operator},
|
|
|
|
|
journal = {Log. Methods Comput. Sci.},
|
|
|
|
|
volume = {4},
|
|
|
|
|
number = {4},
|
|
|
|
|
year = {2008}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Cupto
|
|
|
|
|
@inproceedings{GunterRR95,
|
|
|
|
|
author = {Carl A. Gunter and
|
|
|
|
|
Didier R{\'{e}}my and
|
|
|
|
|
Jon G. Riecke},
|
|
|
|
|
title = {A Generalization of Exceptions and Control in ML-like Languages},
|
|
|
|
|
booktitle = {{FPCA}},
|
|
|
|
|
pages = {12--23},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {1995}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Felleisen's F
|
|
|
|
|
@techreport{FelleisenFDM87,
|
|
|
|
|
author = {Matthias Felleisen
|
|
|
|
|
and Daniel P. Friedman
|
|
|
|
|
and Bruce Duba
|
|
|
|
|
and John Merrill},
|
|
|
|
|
title = {Beyond Continuations},
|
|
|
|
|
number = {216},
|
|
|
|
|
institution = {Computer Science Department, Indiana University},
|
|
|
|
|
address = {Bloomington, Indiana 47405, USA},
|
|
|
|
|
year = 1987,
|
|
|
|
|
month = feb
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Felleisen88,
|
|
|
|
|
author = {Matthias Felleisen},
|
|
|
|
|
title = {The Theory and Practice of First-Class Prompts},
|
|
|
|
|
booktitle = {{POPL}},
|
|
|
|
|
pages = {180--190},
|
|
|
|
|
publisher = {{ACM} Press},
|
|
|
|
|
year = {1988}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Control and prompt
|
|
|
|
|
@article{SitaramF90,
|
|
|
|
|
author = {Dorai Sitaram and
|
|
|
|
|
Matthias Felleisen},
|
|
|
|
|
title = {Control Delimiters and Their Hierarchies},
|
|
|
|
|
journal = {{LISP} Symb. Comput.},
|
|
|
|
|
volume = {3},
|
|
|
|
|
number = {1},
|
|
|
|
|
pages = {67--99},
|
|
|
|
|
year = {1990}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Escape
|
|
|
|
|
@article{Reynolds98a,
|
|
|
|
|
author = {John C. Reynolds},
|
|
|
|
|
title = {Definitional Interpreters for Higher-Order Programming Languages},
|
|
|
|
|
journal = {High. Order Symb. Comput.},
|
|
|
|
|
volume = {11},
|
|
|
|
|
number = {4},
|
|
|
|
|
pages = {363--397},
|
|
|
|
|
year = {1998}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Shift/reset
|
|
|
|
|
@techreport{DanvyF89,
|
|
|
|
|
author = {Olivier Danvy and Andrzej Filinski},
|
|
|
|
|
title = {A Functional Abstraction of Typed Contexts},
|
|
|
|
|
number = {89/12},
|
|
|
|
|
institution = {DIKU, Computer Science Department, University of Copenhagen},
|
|
|
|
|
address = {Copenhagen, Denmark},
|
|
|
|
|
year = 1989,
|
|
|
|
|
month = jul
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Amb
|
|
|
|
|
@incollection{McCarthy63,
|
|
|
|
|
author = {John McCarthy},
|
|
|
|
|
title = {A Basis for a Mathematical Theory of Computation},
|
|
|
|
|
editor = {P. Braffort and D. Hirschberg},
|
|
|
|
|
series = {Studies in Logic and the Foundations of Mathematics},
|
|
|
|
|
publisher = {Elsevier},
|
|
|
|
|
volume = {35},
|
|
|
|
|
pages = {33--70},
|
|
|
|
|
year = {1963},
|
|
|
|
|
booktitle = {Computer Programming and Formal Systems},
|
|
|
|
|
OPTissn = "0049-237X",
|
|
|
|
|
OPTdoi = "https://doi.org/10.1016/S0049-237X(08)72018-4"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Simula (coroutines)
|
|
|
|
|
@inproceedings{DahlMN68,
|
|
|
|
|
author = {Ole-Johan Dahl and Bj\o{}rn Myhrhaug and Kristen Nygaard},
|
|
|
|
|
title = {Some Features of the SIMULA 67 Language},
|
|
|
|
|
year = {1968},
|
|
|
|
|
publisher = {Winter Simulation Conference},
|
|
|
|
|
booktitle = {Proceedings of the Second Conference on Applications of Simulations},
|
|
|
|
|
pages = {29--31},
|
|
|
|
|
numpages = {3},
|
|
|
|
|
location = {New York, New York, USA}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@book{DahlDH72,
|
|
|
|
|
editor = {Ole-Johan Dahl and Edgar W. Dijkstra and C. A. R. Hoare},
|
|
|
|
|
title = {Structured Programming},
|
|
|
|
|
year = {1972},
|
|
|
|
|
isbn = {0122005503},
|
|
|
|
|
publisher = {Academic Press Ltd.},
|
|
|
|
|
address = {GBR}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Second-hand reference for the inventor of coroutines
|
|
|
|
|
@book{Knuth97,
|
|
|
|
|
author = {Donald E. Knuth},
|
|
|
|
|
title = {The Art of Computer Programming, Volume 1 (3rd Ed.): Fundamental Algorithms},
|
|
|
|
|
year = {1997},
|
|
|
|
|
isbn = {0201896834},
|
|
|
|
|
publisher = {Addison Wesley Longman Publishing Co., Inc.},
|
|
|
|
|
address = {USA}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Second-hand reference for call/cc
|
|
|
|
|
@techreport{AbelsonHAKBOBPCRFRHSHW85,
|
|
|
|
|
author = {Hal Abelson
|
|
|
|
|
and Chris Haynes
|
|
|
|
|
and Norman Adams
|
|
|
|
|
and Eugene Kohlbecker
|
|
|
|
|
and David Bartley
|
|
|
|
|
and Don Oxley
|
|
|
|
|
and Gary Brooks
|
|
|
|
|
and Kent Pitman
|
|
|
|
|
and William Clinger
|
|
|
|
|
and Jonathan Rees
|
|
|
|
|
and Dan Friedman
|
|
|
|
|
and Bill Rozas
|
|
|
|
|
and Robert Halstead
|
|
|
|
|
and Gerald Jey Sussman
|
|
|
|
|
and Chris Hanson
|
|
|
|
|
and Mitchell Wand},
|
|
|
|
|
title = {The Revised Revised Report on {Scheme} or An {UnCommon} {Lisp}},
|
|
|
|
|
year = {1985},
|
|
|
|
|
institution = {MIT},
|
|
|
|
|
number = {No. 848},
|
|
|
|
|
month = aug,
|
|
|
|
|
type = {AI Memo}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# MacLisp (catch)
|
|
|
|
|
@misc{Moon74,
|
|
|
|
|
author = {David A. Moon},
|
|
|
|
|
title = {{MACLISP} Reference Manual},
|
|
|
|
|
year = 1974,
|
|
|
|
|
howpublished = {Project {MAC} -- {MIT}},
|
|
|
|
|
month = apr
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Common Lisp (resumable exceptions)
|
|
|
|
|
@book{Steele90,
|
|
|
|
|
author = {Guy L. Steele},
|
|
|
|
|
title = {Common {LISP}: The Language (2nd Ed.)},
|
|
|
|
|
year = {1990},
|
|
|
|
|
isbn = {1555580416},
|
|
|
|
|
publisher = {Digital Press},
|
|
|
|
|
address = {USA}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# System F
|
|
|
|
|
@phdthesis{Girard72,
|
|
|
|
|
author = {Jean-Yves Girard},
|
|
|
|
|
school = {Universit{\'e} Paris 7},
|
|
|
|
|
title = {Interpr{\'e}tation fonctionnelle et {\'e}limination des coupures de l'arithm{\'e}tique d'ordre sup{\'e}rieur},
|
|
|
|
|
year = 1972,
|
|
|
|
|
address = {France}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Reynolds74,
|
|
|
|
|
author = {John C. Reynolds},
|
|
|
|
|
title = {Towards a theory of type structure},
|
|
|
|
|
booktitle = {Symposium on Programming},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {19},
|
|
|
|
|
pages = {408--423},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {1974}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Wadler89,
|
|
|
|
|
author = {Philip Wadler},
|
|
|
|
|
title = {Theorems for Free!},
|
|
|
|
|
booktitle = {{FPCA}},
|
|
|
|
|
pages = {347--359},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {1989}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Tail calls
|
|
|
|
|
@inproceedings{Clinger98,
|
|
|
|
|
author = {William D. Clinger},
|
|
|
|
|
title = {Proper Tail Recursion and Space Efficiency},
|
|
|
|
|
booktitle = {{PLDI}},
|
|
|
|
|
pages = {174--185},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {1998}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Unix
|
|
|
|
|
@article{RitchieT74,
|
|
|
|
|
author = {Dennis Ritchie and
|
|
|
|
|
Ken Thompson},
|
|
|
|
|
title = {The {UNIX} Time-Sharing System},
|
|
|
|
|
journal = {Commun. {ACM}},
|
|
|
|
|
volume = {17},
|
|
|
|
|
number = {7},
|
|
|
|
|
pages = {365--375},
|
|
|
|
|
year = {1974}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@book{Raymond03,
|
|
|
|
|
author = {Eric Steven Raymond},
|
|
|
|
|
title = {The Art of {UNIX} Programming},
|
|
|
|
|
year = {2003},
|
|
|
|
|
isbn = {0131429019},
|
|
|
|
|
publisher = {Pearson Education}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# GNU coreutils
|
|
|
|
|
@book{MacKenzieMPPBYS20,
|
|
|
|
|
author = {David MacKenzie
|
|
|
|
|
and Jim Meyering
|
|
|
|
|
and Ross Paterson
|
|
|
|
|
and François Pinard
|
|
|
|
|
and Karl Berry
|
|
|
|
|
and Brian Youmans
|
|
|
|
|
and Richard Stallman},
|
|
|
|
|
title = {{GNU} {Coreutils}},
|
|
|
|
|
note = {For version 8.32},
|
|
|
|
|
month = feb,
|
|
|
|
|
year = 2020,
|
|
|
|
|
publisher = {Free Software Foundation},
|
|
|
|
|
address = {Boston, MA, USA}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Expressiveness
|
|
|
|
|
@inproceedings{CartwrightF92,
|
|
|
|
|
author = {Robert Cartwright and
|
|
|
|
|
Matthias Felleisen},
|
|
|
|
|
title = {Observable Sequentiality and Full Abstraction},
|
|
|
|
|
booktitle = {{POPL}},
|
|
|
|
|
pages = {328--342},
|
|
|
|
|
publisher = {{ACM} Press},
|
|
|
|
|
year = {1992}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@book{LongleyN15,
|
|
|
|
|
author = {John Longley and
|
|
|
|
|
Dag Normann},
|
|
|
|
|
title = {Higher-Order Computability},
|
|
|
|
|
series = {Theory and Applications of Computability},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2015}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@inproceedings{Longley08,
|
|
|
|
|
author = {John Longley},
|
|
|
|
|
title = {Interpreting Localized Computational Effects Using Operators of Higher
|
|
|
|
|
Type},
|
|
|
|
|
booktitle = {CiE},
|
|
|
|
|
series = {Lecture Notes in Computer Science},
|
|
|
|
|
volume = {5028},
|
|
|
|
|
pages = {389--402},
|
|
|
|
|
publisher = {Springer},
|
|
|
|
|
year = {2008}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Catchcont
|
|
|
|
|
@misc{LongleyW08,
|
|
|
|
|
author = {John Longley and Nicholas Wolverson},
|
|
|
|
|
title = {Eriskay: a programming language based on game semantics},
|
|
|
|
|
month = apr,
|
|
|
|
|
year = 2008,
|
|
|
|
|
howpublished = {Presented at {GaLoP III}}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Value restriction
|
|
|
|
|
@article{Wright95,
|
|
|
|
|
author = {Andrew K. Wright},
|
|
|
|
|
title = {Simple Imperative Polymorphism},
|
|
|
|
|
journal = {{LISP} Symb. Comput.},
|
|
|
|
|
volume = {8},
|
|
|
|
|
number = {4},
|
|
|
|
|
pages = {343--355},
|
|
|
|
|
year = {1995}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Shakespeare's Hamlet
|
|
|
|
|
@misc{Shakespeare6416,
|
|
|
|
|
author = {William Shakespeare},
|
|
|
|
|
title = {The {Tragedy} of {Hamlet}, {Prince} of {Denmark}},
|
|
|
|
|
year = {1564-1616}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Introductory PL books
|
|
|
|
|
@book{Pierce02,
|
|
|
|
|
author = {Benjamin C. Pierce},
|
|
|
|
|
title = {Types and programming languages},
|
|
|
|
|
publisher = {{MIT} Press},
|
|
|
|
|
year = {2002}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@book{Harper16,
|
|
|
|
|
author = {Robert Harper},
|
|
|
|
|
title = {Practical Foundations for Programming Languages (2nd. Ed.)},
|
|
|
|
|
publisher = {Cambridge University Press},
|
|
|
|
|
year = {2016}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Andrej's tutorial
|
|
|
|
|
@article{Bauer18,
|
|
|
|
|
author = {Andrej Bauer},
|
|
|
|
|
title = {What is algebraic about algebraic effects and handlers?},
|
|
|
|
|
journal = {CoRR},
|
|
|
|
|
volume = {abs/1807.05923},
|
|
|
|
|
year = {2018}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Talcott's dissertation
|
|
|
|
|
@phdthesis{Talcott85,
|
|
|
|
|
author = {Carolyn L. Talcott},
|
|
|
|
|
title = {The Essence of Rum --- A theory of the intensional and extensional aspects of Lisp-type computation},
|
|
|
|
|
school = {Stanford University},
|
|
|
|
|
year = 1985,
|
|
|
|
|
address = {Stanford, CA 94305, USA}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Fcontrol
|
|
|
|
|
@inproceedings{Sitaram93,
|
|
|
|
|
author = {Dorai Sitaram},
|
|
|
|
|
title = {Handling Control},
|
|
|
|
|
booktitle = {{PLDI}},
|
|
|
|
|
pages = {147--155},
|
|
|
|
|
publisher = {{ACM}},
|
|
|
|
|
year = {1993}
|
|
|
|
|
}
|