1
0
mirror of https://github.com/dhil/phd-dissertation synced 2026-03-13 02:58:26 +00:00

Update acknowledgements

This commit is contained in:
2020-09-11 17:05:18 +01:00
parent ee83579eed
commit 95ccddb882

View File

@@ -129,14 +129,17 @@
%% Acknowledgements %% Acknowledgements
\begin{acknowledgements} \begin{acknowledgements}
Firstly, I want to thank Sam Lindley for his guidance, advice, and Firstly, I want to thank Sam Lindley for his guidance, advice, and
encouragement throughout my studies. He has been ardent supervisor, encouragement throughout my studies. He has been enthusiastic
and he has always been generous with his time. I am fortunate to supervisor, and he has always been generous with his time. I am
have been supervised by him. fortunate to have been supervised by him.
My work has been supported by \href{https://www.epsrc.ac.uk/}{EPSRC} Throughout my studies I have received funding from the
grant \href{http://pervasiveparallelism.inf.ed.ac.uk}{EP/L01503X/1} \href{https://www.ed.ac.uk/informatics}{School of Informatics} at
(EPSRC Centre for Doctoral Training in Pervasive Parallelism) and by The University of Edinburgh, as well as an
ERC Consolidator Grant Skye (grant number 682315). \href{https://www.epsrc.ac.uk/}{EPSRC} grant
\href{http://pervasiveparallelism.inf.ed.ac.uk}{EP/L01503X/1} (EPSRC
Centre for Doctoral Training in Pervasive Parallelism), and by ERC
Consolidator Grant Skye (grant number 682315).
List of people to thank List of people to thank
\begin{itemize} \begin{itemize}
@@ -3385,7 +3388,7 @@ deconstructions also gets bigger. The continuation representation
needs more structure. While it is seductive to program with lists, it needs more structure. While it is seductive to program with lists, it
quickly gets unwieldy. quickly gets unwieldy.
\subsection{Simultaneous CPS transform for deep and shallow handlers} \subsection{Effect handlers via generalised continuations}
\label{sec:cps-deep-shallow} \label{sec:cps-deep-shallow}
\begin{figure} \begin{figure}
% %
@@ -3393,31 +3396,31 @@ quickly gets unwieldy.
% %
\begin{equations} \begin{equations}
\cps{-} &:& \ValCat \to \UValCat\\ \cps{-} &:& \ValCat \to \UValCat\\
% \cps{x} &\defas& x\\ \cps{x} &\defas& x\\
\cps{\lambda x.M} &\defas& \dlam x\,\dhk.\Let\;(\dk \dcons \dhk') = \dhk\;\In\;\cps{M} \sapp (\reflect\dk \scons \reflect \dhk') \\ \cps{\lambda x.M} &\defas& \dlam x\,\dhk.\Let\;(\dk \dcons \dhk') = \dhk\;\In\;\cps{M} \sapp (\reflect\dk \scons \reflect \dhk') \\
\cps{\Lambda \alpha.M} &\defas& \dlam \Unit\,\dhk.\Let\;(\dk \dcons \dhk') = \dhk\;\In\;\cps{M} \sapp (\reflect\dk \scons \reflect \dhk') \\ \cps{\Lambda \alpha.M} &\defas& \dlam \Unit\,\dhk.\Let\;(\dk \dcons \dhk') = \dhk\;\In\;\cps{M} \sapp (\reflect\dk \scons \reflect \dhk') \\
\cps{\Rec\,g\,x.M} &\defas& \Rec\,g\,x\,\dhk.\Let\;(\dk \dcons \dhk') = \dhk\;\In\;\cps{M} \sapp (\reflect\dk \scons \reflect \dhk') \\ \cps{\Rec\,g\,x.M} &\defas& \Rec\,g\,x\,\dhk.\Let\;(\dk \dcons \dhk') = \dhk\;\In\;\cps{M} \sapp (\reflect\dk \scons \reflect \dhk') \\
% \multicolumn{3}{c}{ \multicolumn{3}{c}{
% \cps{\Record{}} \defas \Record{} \cps{\Record{}} \defas \Record{}
% \qquad \qquad
% \cps{\Record{\ell = \!\!V; W}} \defas \Record{\ell = \!\cps{V}; \cps{W}} \cps{\Record{\ell = \!\!V; W}} \defas \Record{\ell = \!\cps{V}; \cps{W}}
% \qquad \qquad
% \cps{\ell\,V} \defas \ell\,\cps{V} \cps{\ell\,V} \defas \ell\,\cps{V}
% } }
\end{equations} \end{equations}
% %
\textbf{Computations} \textbf{Computations}
% %
\begin{equations} \begin{equations}
\cps{-} &:& \CompCat \to \SValCat^\ast \to \UCompCat\\ \cps{-} &:& \CompCat \to \SValCat^\ast \to \UCompCat\\
% \cps{V\,W} &\defas& \slam \shk.\cps{V} \dapp \cps{W} \dapp \reify \shk \\ \cps{V\,W} &\defas& \slam \shk.\cps{V} \dapp \cps{W} \dapp \reify \shk \\
% \cps{V\,T} &\defas& \slam \shk.\cps{V} \dapp \Record{} \dapp \reify \shk \\ \cps{V\,T} &\defas& \slam \shk.\cps{V} \dapp \Record{} \dapp \reify \shk \\
% \cps{\Let\; \Record{\ell=x;y} = V \; \In \; N} &\defas& \slam \shk.\Let\; \Record{\ell=x;y} = \cps{V} \; \In \; \cps{N} \sapp \shk \\ \cps{\Let\; \Record{\ell=x;y} = V \; \In \; N} &\defas& \slam \shk.\Let\; \Record{\ell=x;y} = \cps{V} \; \In \; \cps{N} \sapp \shk \\
% \cps{\Case~V~\{\ell~x \mapsto M; y \mapsto N\}} &\defas& \cps{\Case~V~\{\ell~x \mapsto M; y \mapsto N\}} &\defas&
% \slam \shk.\Case~\cps{V}~\{\ell~x \mapsto \cps{M} \sapp \shk; y \mapsto \cps{N} \sapp \shk\} \\ \slam \shk.\Case~\cps{V}~\{\ell~x \mapsto \cps{M} \sapp \shk; y \mapsto \cps{N} \sapp \shk\} \\
% \cps{\Absurd~V} &\defas& \slam \shk.\Absurd~\cps{V} \\ \cps{\Absurd~V} &\defas& \slam \shk.\Absurd~\cps{V} \\
% \end{equations} \end{equations}
% \begin{equations} \begin{equations}
\cps{\Return\,V} &\defas& \slam \shk.\kapp\;(\reify \shk)\;\cps{V} \\ \cps{\Return\,V} &\defas& \slam \shk.\kapp\;(\reify \shk)\;\cps{V} \\
\cps{\Let~x \revto M~\In~N} &\defas& \cps{\Let~x \revto M~\In~N} &\defas&
\bl\slam \sRecord{\shf, \sRecord{\svhret, \svhops}} \scons \shk. \bl\slam \sRecord{\shf, \sRecord{\svhret, \svhops}} \scons \shk.