cek-call-cc/main.tex

84 lines
1.8 KiB
TeX

\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage{agda}
\usepackage{caption}
\usepackage{catchfilebetweentags}
\usepackage{cite}
\usepackage{newunicodechar}
\usepackage{url}
\usetheme{CambridgeUS}
\usecolortheme{lily}
\setbeamercovered{transparent}
\usepackage{tikz}
\usetikzlibrary{positioning}
\titlegraphic{
\centering
\includegraphics[width=.3\textwidth,height=.5\textheight]{cesk.png}
}
\title{First class continuations with CEK machines in Agda}
\author{Michael Zhang}
\date{}
\begin{document}
\frame{\titlepage}
\section{Primer on CESK}
\begin{frame}
\frametitle{What is a CESK machine?}
\begin{itemize}[<+->]
\item Abstract machine for interpreters, introduced by Matthias Felleisen.
\item Stands for $C$ontrol, $E$nvironment, $S$tore, $K$ontinuation.
\item Based on Matt Might's blog post on CESK machines \cite{might-cesk}.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{How does it work?}
\begin{itemize}[<+->]
\item
\end{itemize}
\end{frame}
\begin{frame}
\begin{tikzpicture}[
roundnode/.style={circle, draw=green!60, fill=green!5, very thick, minimum size=7mm},
squarednode/.style={rectangle, draw=red!60, fill=red!5, very thick, minimum size=5mm},
]
\node[draw, align=left, squarednode](ceskState){
C = $\lambda x . (\lambda y . x + y)$ \\
$E$ = [] \\
$\kappa$ = halt
};
\node[squarednode](ceskState2)[right=of ceskState]{CEK};
%lines
\draw[->] (ceskState.east) -- (ceskState2.west);
\end{tikzpicture}
\end{frame}
\section{Implementation}
\begin{frame}
\frametitle{Hellosu}
\include{./gentex/Project/Cesk.tex}
\end{frame}
\section{Conclusion}
\begin{frame}
\frametitle{Resources}
\bibliography{res}{}
\bibliographystyle{plain}
\end{frame}
\end{document}
% vim: set sw=2 :