From ab38da7102d286a85902d23126280e7cd501519d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Hillerstr=C3=B6m?= Date: Wed, 28 Oct 2020 22:41:25 +0000 Subject: [PATCH] Some more references on control operators. --- thesis.bib | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- thesis.tex | 10 +++++++--- 2 files changed, 56 insertions(+), 4 deletions(-) diff --git a/thesis.bib b/thesis.bib index cdae2a6..f5257b7 100644 --- a/thesis.bib +++ b/thesis.bib @@ -846,7 +846,7 @@ howpublished = {{ML Workshop}} } -# Delimited Control +# Dynamic binding @inproceedings{KiselyovSS06, author = {Oleg Kiselyov and Chung{-}chieh Shan and @@ -1180,6 +1180,16 @@ year = {1994} } +# Simulation of delimited control using undelimited control +@inproceedings{Filinski94, + author = {Andrzej Filinski}, + title = {Representing Monads}, + booktitle = {{POPL}}, + pages = {446--457}, + publisher = {{ACM} Press}, + year = {1994} +} + # Landin's J operator @article{Landin65, author = {Peter J. Landin}, @@ -1365,6 +1375,25 @@ type = {AI Memo} } +# Splitter +@inproceedings{QueinnecS91, + author = {Christian Queinnec and + Bernard P. Serpette}, + title = {A Dynamic Extent Control Operator for Partial Continuations}, + booktitle = {{POPL}}, + pages = {174--184}, + publisher = {{ACM} Press}, + year = {1991} +} + +# Comparison of (some) delimited control operators +@misc{Shan04, + author = {Chung{-}chieh Shan}, + title = {Shift to Control}, + howpublished = {{ACM SIGPLAN} Scheme Workshop}, + year = {2004} +} + # MacLisp (catch) @misc{Moon74, author = {David A. Moon}, @@ -1590,6 +1619,15 @@ year = {1976} } +@inproceedings{Wand80, + author = {Mitchell Wand}, + title = {Continuation-Based Multiprocessing}, + booktitle = {{LISP} Conference}, + pages = {19--28}, + publisher = {{ACM}}, + year = {1980} +} + @inproceedings{HaynesF84, author = {Christopher T. Haynes and Daniel P. Friedman}, @@ -1609,6 +1647,16 @@ address = {Scotland, {UK}} } +@inproceedings{HiebD90, + author = {Robert Hieb and + R. Kent Dybvig}, + title = {Continuations and Concurrency}, + booktitle = {{PPOPP}}, + pages = {128--136}, + publisher = {{ACM}}, + year = {1990} +} + @inproceedings{GanzFW99, author = {Steven E. Ganz and Daniel P. Friedman and diff --git a/thesis.tex b/thesis.tex index e1f1fe6..ac8abc0 100644 --- a/thesis.tex +++ b/thesis.tex @@ -519,8 +519,9 @@ delimiters in her PhD dissertation~\cite{Talcott85}. % Common Lisp resumable exceptions (condition system)~\cite{Steele90}, F~\cite{FelleisenFDM87,Felleisen88}, control/prompt~\cite{SitaramF90}, -shift/reset~\cite{DanvyF89,DanvyF90}, fcontrol~\cite{Sitaram93}, -catchcont~\cite{LongleyW08}, effect handlers~\cite{PlotkinP09}. +shift/reset~\cite{DanvyF89,DanvyF90}, splitter~\cite{QueinnecS91}, +fcontrol~\cite{Sitaram93}, catchcont~\cite{LongleyW08}, effect +handlers~\cite{PlotkinP09}. \section{Notions of continuations} @@ -537,6 +538,9 @@ callcc, J, catchcont, etc. \subsection{Undelimited operators} \subsection{Delimited operators} +Comparison of various delimited control +operators~\cite{Shan04}. Simulation of delimited control using +undelimited control~\cite{Filinski94} \section{Second-Class control operators} Coroutines, async/await, generators/iterators, amb. @@ -4514,7 +4518,7 @@ into the return case body $N$ for their respective binders. \paragraph{The resumption monad} \citet{Milner75}, \citet{Plotkin76}, \citet{Moggi90}, \citet{Papaspyrou01}, \citet{Harrison06}, \citet{AtkeyJ15} -\paragraph{Continuation-based interleaving} \citet{HaynesF84} \citet{GanzFW99} +\paragraph{Continuation-based interleaving} \citet{Wand80} \citet{HaynesF84} \citet{GanzFW99} \citet{HiebD90} \subsection{Effect-driven concurrency} \citet{BauerP15}, \citet{DolanWSYM15}, \citet{Hillerstrom16}, \citet{DolanEHMSW17}, \citet{Convent17}, \citet{Poulson20}