From 8889ecb4630aa96088a514ae58f621c170624d24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Hillerstr=C3=B6m?= Date: Fri, 23 Oct 2020 00:43:57 +0100 Subject: [PATCH] More control operator references. --- macros.tex | 16 ++++++++++++++- thesis.bib | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++- thesis.tex | 18 +++++++++++++---- 3 files changed, 85 insertions(+), 6 deletions(-) diff --git a/macros.tex b/macros.tex index 8b91c0f..e53141c 100644 --- a/macros.tex +++ b/macros.tex @@ -393,4 +393,18 @@ \newcommand{\quoteHamlet}{\dec{hamlet}} \newcommand{\Proc}{\dec{Proc}} \newcommand{\schedule}{\dec{schedule}} -\newcommand{\fsname}{BSFS} \ No newline at end of file +\newcommand{\fsname}{BSFS} + +%% +%% Some control operators +%% +\newcommand{\Cupto}{\keyw{cupto}} +\newcommand{\Callcc}{\keyw{callcc}} +\newcommand{\Throw}{\keyw{throw}} +\newcommand{\Catch}{\keyw{catch}} +\newcommand{\Catchcont}{\keyw{catchcont}} +\newcommand{\shift}{\keyw{shift}} +\newcommand{\reset}{\keyw{reset}} +\newcommand{\Control}{\keyw{control}} +\newcommand{\Prompt}{\keyw{prompt}} +\newcommand{\Escape}{\keyw{escape}} \ No newline at end of file diff --git a/thesis.bib b/thesis.bib index e8e6f2e..deb37be 100644 --- a/thesis.bib +++ b/thesis.bib @@ -1227,7 +1227,20 @@ year = {1995} } -# Prompts +# 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}, @@ -1237,6 +1250,18 @@ 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}, @@ -1248,6 +1273,17 @@ 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}, @@ -1493,4 +1529,23 @@ 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} } \ No newline at end of file diff --git a/thesis.tex b/thesis.tex index 73b9fac..a926797 100644 --- a/thesis.tex +++ b/thesis.tex @@ -507,10 +507,20 @@ escape~\cite{Reynolds98a}, Scheme75's catch~\cite{SussmanS75}, callcc is a procedural variation of catch. It was invented in 1982~\cite{Abelson91}. -Delimited control: Common Lisp resumable exceptions (condition -system)~\cite{Steele90}, prompt/control~\cite{Felleisen88}, -shift/reset~\cite{DanvyF90}, catchcont~\cite{LongleyW08}, effect -handlers~\cite{PlotkinP09}. +Delimited control: Control delimiters form the basis for delimited +control. \citeauthor{Felleisen88} introduced control delimiters in +1988, although allusions to control delimiters were made a year +earlier by \citet{FelleisenFDM87} and in \citeauthor{Felleisen87}'s +PhD dissertation~\cite{Felleisen87}. The basic idea was teased even +earlier in \citeauthor{Talcott85}'s teased the idea of control +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}. + +Continuation marks? Backtracking: Amb~\cite{McCarthy63}.