diff -r b5b5583a3a08 -r 6acabeecdf75 slides/slides05.tex --- a/slides/slides05.tex Thu Jul 30 13:50:54 2020 +0100 +++ b/slides/slides05.tex Sat Aug 15 14:18:37 2020 +0100 @@ -1,6 +1,6 @@ % !TEX program = xelatex -\documentclass[dvipsnames,14pt,t]{beamer} +\documentclass[dvipsnames,14pt,t,xelatex,aspectratio=169,xcolor={table}]{beamer} \usepackage{../slides} \usepackage{../graphics} \usepackage{../langs} @@ -25,448 +25,55 @@ \begin{tabular}{@ {}c@ {}} \\[-3mm] \LARGE Compilers and \\[-2mm] - \LARGE Formal Languages (5)\\[3mm] + \LARGE Formal Languages\\[3mm] \end{tabular}} \normalsize \begin{center} \begin{tabular}{ll} Email: & christian.urban at kcl.ac.uk\\ - Office Hours: & Thursdays 12 -- 14\\ - Location: & N7.07 (North Wing, Bush House)\\ + %Office Hours: & Thursdays 12 -- 14\\ + %Location: & N7.07 (North Wing, Bush House)\\ Slides \& Progs: & KEATS (also homework is there)\\ \end{tabular} +\end{center} + + \begin{center} + \begin{tikzpicture} + \node[drop shadow,fill=white,inner sep=0pt] + {\footnotesize\rowcolors{1}{capri!10}{white} + \begin{tabular}{|p{4.8cm}|p{4.8cm}|}\hline + 1 Introduction, Languages & 6 While-Language \\ + 2 Regular Expressions, Derivatives & 7 Compilation, JVM \\ + 3 Automata, Regular Languages & 8 Compiling Functional Languages \\ + 4 Lexing, Tokenising & 9 Optimisations \\ + \cellcolor{blue!50} + 5 Grammars, Parsing & 10 LLVM \\ \hline + \end{tabular}% + }; + \end{tikzpicture} \end{center} \end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[c] - \frametitle{Coursework 1: Submissions} - - \begin{itemize} - \item Scala (29) - \item Haskell (1) - \item Kotlin (1) - \item Rust (1) - \end{itemize}\bigskip\bigskip - - \small - Please get in contact if you intend to do CW Strand 2. No zips please. - Give definitions also on paper if asked. BTW, simp - can stay unchanged. Use \texttt{ders} for CW2, not \texttt{ders2}! - \end{frame} - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[c] -\frametitle{\begin{tabular}{c}Last Week\\[-2mm] - Regexes and Values\end{tabular}} - -Regular expressions and their corresponding values: - -\begin{center} -\begin{columns} -\begin{column}{3cm} -\begin{tabular}{@{}rrl@{}} - \bl{$r$} & \bl{$::=$} & \bl{$\ZERO$}\\ - & \bl{$\mid$} & \bl{$\ONE$} \\ - & \bl{$\mid$} & \bl{$c$} \\ - & \bl{$\mid$} & \bl{$r_1 \cdot r_2$}\\ - & \bl{$\mid$} & \bl{$r_1 + r_2$} \\ - \\ - & \bl{$\mid$} & \bl{$r^*$} \\ - \end{tabular} -\end{column} -\begin{column}{3cm} -\begin{tabular}{@{\hspace{-7mm}}rrl@{}} - \bl{$v$} & \bl{$::=$} & \\ - & & \bl{$Empty$} \\ - & \bl{$\mid$} & \bl{$Char(c)$} \\ - & \bl{$\mid$} & \bl{$Seq(v_1,v_2)$}\\ - & \bl{$\mid$} & \bl{$Left(v)$} \\ - & \bl{$\mid$} & \bl{$Right(v)$} \\ - & \bl{$\mid$} & \bl{$Stars [v_1,\ldots\,v_n]$} \\ - \end{tabular} -\end{column} -\end{columns} -\end{center} - - -\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[c] - -\begin{textblock}{10}(3,5) -\begin{tikzpicture}[scale=2,node distance=1.3cm,every node/.style={minimum size=8mm}] -\node (r1) {\bl{$r_1$}}; -\node (r2) [right=of r1] {\bl{$r_2$}}; -\draw[->,line width=1mm] (r1) -- (r2) node[above,midway] {\bl{$der\,a$}}; -\node (r3) [right=of r2] {\bl{$r_3$}}; -\draw[->,line width=1mm] (r2) -- (r3) node[above,midway] {\bl{$der\,b$}}; -\node (r4) [right=of r3] {\bl{$r_4$}}; -\draw[->,line width=1mm] (r3) -- (r4) node[above,midway] {\bl{$der\,c$}}; -\draw (r4) node[anchor=west] {\;\raisebox{3mm}{\bl{$nullable$}}}; -\node (v4) [below=of r4] {\bl{$v_4$}}; -\draw[->,line width=1mm] (r4) -- (v4); -\node (v3) [left=of v4] {\bl{$v_3$}}; -\draw[->,line width=1mm] (v4) -- (v3) node[below,midway] {\bl{$inj\,c$}}; -\node (v2) [left=of v3] {\bl{$v_2$}}; -\draw[->,line width=1mm] (v3) -- (v2) node[below,midway] {\bl{$inj\,b$}}; -\node (v1) [left=of v2] {\bl{$v_1$}}; -\draw[->,line width=1mm] (v2) -- (v1) node[below,midway] {\bl{$inj\,a$}}; -\draw[->,line width=0.5mm] (r3) -- (v3); -\draw[->,line width=0.5mm] (r2) -- (v2); -\draw[->,line width=0.5mm] (r1) -- (v1); -\draw (r4) node[anchor=north west] {\;\raisebox{-8mm}{\bl{$mkeps$}}}; -\end{tikzpicture} -\end{textblock} - -\begin{textblock}{6}(1,0.8) -\begin{bubble}[6cm] -\small -\begin{tabular}{ll} -\bl{$r_1$}: & \bl{$a \cdot (b \cdot c)$}\\ -\bl{$r_2$}: & \bl{$\ONE \cdot (b \cdot c)$}\\ -\bl{$r_3$}: & \bl{$(\ZERO \cdot (b \cdot c)) + (\ONE \cdot c)$}\\ -\bl{$r_4$}: & \bl{$(\ZERO \cdot (b \cdot c)) + ((\ZERO \cdot c) + \ONE)$}\\ -\end{tabular} -\end{bubble} -\end{textblock} - -\begin{textblock}{6}(1,11.4) -\begin{bubble}[7.6cm] -\small -\begin{tabular}{ll} -\bl{$v_1$}: & \bl{$Seq(Char(a), Seq(Char(b), Char(c)))$}\\ -\bl{$v_2$}: & \bl{$Seq(Empty, Seq(Char(b), Char(c)))$}\\ -\bl{$v_3$}: & \bl{$Right(Seq(Empty, Char(c)))$}\\ -\bl{$v_4$}: & \bl{$Right(Right(Empty))$}\\ -\end{tabular} -\end{bubble} -\end{textblock} - -\begin{textblock}{6}(12,11.4) -\begin{bubble}[2cm] -\small -\begin{tabular}{ll} -\bl{$|v_1|$}: & \bl{$abc$}\\ -\bl{$|v_2|$}: & \bl{$bc$}\\ -\bl{$|v_3|$}: & \bl{$c$}\\ -\bl{$|v_4|$}: & \bl{$[]$} -\end{tabular} -\end{bubble} -\end{textblock} - - -\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - +%\begin{frame}[c] +% \frametitle{Coursework 1: Submissions} +% +% \begin{itemize} +% \item Scala (29) +% \item Haskell (1) +% \item Kotlin (1) +% \item Rust (1) +% \end{itemize}\bigskip\bigskip +% +% \small +% Please get in contact if you intend to do CW Strand 2. No zips please. +% Give definitions also on paper if asked. BTW, simp +% can stay unchanged. Use \texttt{ders} for CW2, not \texttt{ders2}! +% \end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[c] -\frametitle{Simplification} - -\begin{itemize} -\item If we simplify after the derivative, then we are builing the -value for the simplified regular expression, but \emph{not} for the original -regular expression. -\end{itemize} - -\begin{center} -\begin{tikzpicture}[scale=2,node distance=1.3cm,every node/.style={minimum size=8mm}] -\node (r1) {\bl{$r_1$}}; -\node (r2) [right=of r1] {\bl{$r_2$}}; -\draw[->,line width=1mm] (r1) -- (r2) node[above,midway] {\bl{$der\,a$}}; -\node (r3) [right=of r2] {\bl{$r_3$}}; -\draw[->,line width=1mm] (r2) -- (r3) node[above,midway] {\bl{$der\,b$}}; -\node (r4) [right=of r3] {\bl{$r_4$}}; -\draw[->,line width=1mm] (r3) -- (r4) node[above,midway] {\bl{$der\,c$}}; -\draw (r4) node[anchor=west] {\;\raisebox{3mm}{\bl{$nullable$}}}; -\node (v4) [below=of r4] {\bl{$v_4$}}; -\draw[->,line width=1mm] (r4) -- (v4); -\node (v3) [left=of v4] {\bl{$v_3$}}; -\draw[->,line width=1mm] (v4) -- (v3) node[below,midway] {\bl{$inj\,c$}}; -\node (v2) [left=of v3] {\bl{$v_2$}}; -\draw[->,line width=1mm] (v3) -- (v2) node[below,midway] {\bl{$inj\,b$}}; -\node (v1) [left=of v2] {\bl{$v_1$}}; -\draw[->,line width=1mm] (v2) -- (v1) node[below,midway] {\bl{$inj\,a$}}; -\draw[->,line width=0.5mm] (r3) -- (v3); -\draw[->,line width=0.5mm] (r2) -- (v2); -\draw[->,line width=0.5mm] (r1) -- (v1); -\draw (r4) node[anchor=north west] {\;\raisebox{-8mm}{\bl{$mkeps$}}}; -\end{tikzpicture} -\end{center} - -\small -\hspace{4.5cm}\bl{$(b \cdot c) + (\ZERO + \ONE)$} -$\mapsto$ -\bl{$(b \cdot c) + \ONE$} - -\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% \begin{frame}[t] - -% \begin{center} -% \bl{$\only<1>{(b \cdot c)}% -% \only<2-3>{(\underline{b \cdot c})}% -% \only<1-3>{+}% -% \only<1>{(\ZERO + \ONE)}% -% \only<2-3>{(\underline{\ZERO + \ONE})}$}% -% \only<4->{% -% \bl{$\underline{(b \cdot c) + (\ZERO + \ONE)}$}% -% } -% $\mapsto$ -% \bl{$(b \cdot c) + \ONE$} -% \end{center}\bigskip - -% \onslide<3->{% -% \begin{center} -% \begin{tabular}{lcl} -% \bl{$f_{s1}$} & \bl{$=$} & \bl{$\lambda v.v$}\\ -% \bl{$f_{s2}$} & \bl{$=$} & \bl{$\lambda v. \textit{Right}(v)$} -% \end{tabular} -% \end{center}} - -% \only<4>{% -% \begin{center} -% \begin{tabular}{@{}l@{\hspace{1mm}}l@{}} -% \bl{$f_{alt}(f_{s1}, f_{s2}) \dn$}\\ -% \quad \bl{$\lambda v.\,$} -% case \bl{$v = Left(v')$}: -% & return \bl{$Left(f_{s1}(v'))$}\\ -% \quad \phantom{$\lambda v.\,$} -% case \bl{$v = Right(v')$}: -% & return \bl{$Right(f_{s2}(v'))$}\\ -% \end{tabular} -% \end{center}}% -% \only<5->{% -% \begin{center} -% \begin{tabular}{@{}l@{\hspace{1mm}}l@{}} -% \only<5->{\phantom{\bl{$f_{alt}(f_{s1}, f_{s2}) \dn$}}}\\ -% \quad \bl{$\lambda v.\,$} -% case \bl{$v = Left(v')$}: -% & return \bl{$Left(v')$}\\ -% \quad \phantom{$\lambda v.\,$} -% case \bl{$v = Right(v')$}: -% & return \bl{$Right(Right(v'))$}\\ -% \end{tabular} -% \end{center}}% - -% \only<6->{% -% \begin{center} -% \begin{tabular}{@{}l@{\hspace{4mm}}l@{}} -% \bl{$\textit{mkeps}$} simplified case: & -% \bl{$\textit{Right}(\textit{Empty})$}\\ -% rectified case: & -% \bl{$\textit{Right}(\textit{Right}(\textit{Empty}))$} -% \end{tabular} -% \end{center}}% - -% \end{frame} -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[c] -\frametitle{Records} - -\begin{itemize} -\item new regex: \bl{$(x:r)$}\hspace{7mm}new value: \bl{$Rec(x,v)$}\medskip\pause - -\item \bl{$nullable(x:r) \dn nullable(r)$} -\item \bl{$der\,c\,(x:r) \dn der\,c\,r$} -\item \bl{$mkeps(x:r) \dn Rec(x, mkeps(r))$} -\item \bl{$inj\,(x:r)\,c\,v \dn Rec(x, inj\,r\,c\,v)$} -\end{itemize}\bigskip\bigskip\pause - -\small -for extracting subpatterns \bl{$(z: ((x:ab) + (y:ba))$} - -\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[c] -\frametitle{Environments} - -Obtaining the ``recorded'' parts of a value: - -\begin{center} -\begin{tabular}{lcl} - \bl{$env(Empty)$} & \bl{$\dn$} & \bl{$[]$}\\ - \bl{$env(Char(c))$} & \bl{$\dn$} & \bl{$[]$}\\ - \bl{$env(Left(v))$} & \bl{$\dn$} & \bl{$env(v)$}\\ - \bl{$env(Right(v))$} & \bl{$\dn$} & \bl{$env(v)$}\\ - \bl{$env(Seq(v_1,v_2))$}& \bl{$\dn$} & \bl{$env(v_1) \,@\, env(v_2)$}\\ - \bl{$env(Stars [v_1,\ldots ,v_n])$} & \bl{$\dn$} & - \bl{$env(v_1) \,@\ldots @\, env(v_n)$}\\ - \bl{$env(Rec(x:v))$} & \bl{$\dn$} & \bl{$(x:|v|) :: env(v)$}\\ -\end{tabular} -\end{center} - -\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[c] -\frametitle{While Tokens} - -\begin{center} -\begin{tabular}{@{}r@{\hspace{2mm}}c@{\hspace{2mm}}l@{}} -\pcode{WHILE\_REGS} & $\dn$ & \raisebox{-1mm}{\large(}\pcode{("k" : KEYWORD)} +\\ - & & \phantom{(}\pcode{("i" : ID)} +\\ - & & \phantom{(}\pcode{("o" : OP)} + \\ - & & \phantom{(}\pcode{("n" : NUM)} + \\ - & & \phantom{(}\pcode{("s" : SEMI)} +\\ - & & \phantom{(}\pcode{("p" : (LPAREN + RPAREN))} +\\ - & & \phantom{(}\pcode{("b" : (BEGIN + END))} +\\ - & & \phantom{(}\pcode{("w" : WHITESPACE)}\raisebox{-1mm}{\large)$^*$} -\end{tabular} -\end{center} - -\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[t] - -\consolas -\begin{center} -\code{"if true then then 42 else +"} -\end{center} - -\only<1>{ -\small\begin{tabular}{l} -KEYWORD(if),\\ -WHITESPACE,\\ -IDENT(true),\\ -WHITESPACE,\\ -KEYWORD(then),\\ -WHITESPACE,\\ -KEYWORD(then),\\ -WHITESPACE,\\ -NUM(42),\\ -WHITESPACE,\\ -KEYWORD(else),\\ -WHITESPACE,\\ -OP(+) -\end{tabular}} - -\only<2>{ -\small\begin{tabular}{l} -KEYWORD(if),\\ -IDENT(true),\\ -KEYWORD(then),\\ -KEYWORD(then),\\ -NUM(42),\\ -KEYWORD(else),\\ -OP(+) -\end{tabular}} - -\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%\begin{frame}[c] -%\frametitle{Coursework: PLs (16)} -% -%\begin{itemize} -%\item Java (16) -%\item C++, C, C\# (14) -%\item JavaScript (10) -%\item Scala (9) -%\item Python (9) -%\item PHP (6) -%\item Haskell (3) -%\item Ruby (4) -%\item Bash, Perl, Powershell (2) -%\item TypeScript (1) -%\item R (1) -%\item Coconut (1) -%\item Pascal (1) -%\end{itemize} -% -%\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%\begin{frame}[c] -%\frametitle{Coursework: Nullable} -% -%\begin{center} -%\begin{tabular}{@ {}l@ {\hspace{2mm}}c@ {\hspace{2mm}}l@ {}} -% \bl{$nullable([c_1 c_2 \ldots c_n])$} & \bl{$\dn$} & $?$\\ -% \bl{$nullable(r^+)$} & \bl{$\dn$} & $?$\\ -% \bl{$nullable(r^?)$} & \bl{$\dn$} & $?$\\ -% \bl{$nullable(r^{\{n\}})$} & \bl{$\dn$} & $?$\\ -% \bl{$nullable(r^{\{n..\}})$} & \bl{$\dn$} & $?$\\ -% \bl{$nullable(r^{\{..n\}})$} & \bl{$\dn$} & $?$\\ -% \bl{$nullable(r^{\{n..m\}})$} & \bl{$\dn$} & $?$\\ -% \bl{$nullable(\sim{}r)$} & \bl{$\dn$} & $?$\\ -% -%\end{tabular} -%\end{center} -% -%\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%\begin{frame}[c] -%%%\frametitle{Coursework: der} -% -%\begin{center} -%\begin{tabular}{@ {}l@ {\hspace{1mm}}c@ {\hspace{1mm}}l@ {}} -% \bl{$der\, c\, ([c_1 c_2 \ldots c_n])$} & \bl{$\dn$} & $?$\\ -% \bl{$der\, c\, (r^+)$} & \bl{$\dn$} & $?$\\ -% \bl{$der\, c\, (r^?)$} & \bl{$\dn$} & $?$\\ -% \bl{$der\, c\, (r^{\{n\}})$} & \bl{$\dn$} & -% \bl{$if\;n=0\;then\;\ZERO\;else\;(der\,c\,r)\cdot r^{\{n-\liningnums{1}\}}$}\\ -% \bl{$der\, c\, (r^{\{n..\}})$} & \bl{$\dn$} & -% \bl{$if\;n=0\;then (der\,c\,r)\cdot r^*$}\\ -% & & \bl{$\phantom{if\;n=0\;}else \;(der\,c\,r)\cdot r^{\{n-\liningnums{1}..\}}$}\\ -% \bl{$der\, c\, (r^{\{..n\}})$} & \bl{$\dn$} & -% \bl{$if\;n=0\;then\;\ZERO\;else\;(der\,c\,r)\cdot r^{\{..n-\liningnums{1}\}}$}\\ -% -% \bl{$der\, c\, (r^{\{n..m\}})$} & \bl{$\dn$} & -% \bl{$if\;n = 0 \wedge m = 0\;then\;\ZERO\; else$}\\ -% \multicolumn{3}{l}{\bl{$if\;n = 0 \wedge m > 0\;then\;(der\,c\,r)\cdot r^{\{..m-\liningnums{1}\}}$}}\\ -% \multicolumn{3}{l}{\bl{$\phantom{if\;n = 0 \wedge m > 0\;}else -% \;(der\,c\,r)\cdot r^{\{n-\liningnums{1}..m-\liningnums{1}\}}$}}\\ -% \bl{$der\, c\, (\sim{}r)$} & \bl{$\dn$} & $?$\\ -%\end{tabular} -%\end{center} -% -%\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%\begin{frame}[c] -%\frametitle{Coursework: CFUN} -% -%\begin{center} -%\begin{tabular}{@ {}l@ {\hspace{2mm}}c@ {\hspace{2mm}}l@ {}} -% \bl{$nullable(CFUN(\_))$} & \bl{$\dn$} & \bl{$false$}\\ -% \bl{$der\,c\,(CFUN(f))$} & \bl{$\dn$} & -% \bl{$if\;f(c)\;then\;\ONE\;else\;\ZERO$}\bigskip\\ -% \bl{$CHAR(c)$} & \bl{$\dn$} & \bl{$CFUN(\lambda{}d.\;c=d)$}\\ -% \bl{$CSET([c_1,\ldots,c_n])$} & \bl{$\dn$} & \bl{$CFUN(\lambda{}d.\;d\in [c_1,\ldots,c_n])$}\\ -% \bl{$ALL$} & \bl{$\dn$} & \bl{$CFUN(\lambda{}d.\;true)$}\\ -%\end{tabular} -%\end{center} -% -%\end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame}[t] \frametitle{Lexer, Parser} @@ -478,7 +85,7 @@ rectangle,rounded corners=3mm, very thick,draw=black!50, minimum height=18mm, minimum width=20mm, - top color=white,bottom color=black!20}] + top color=white,bottom color=black!20,drop shadow}] \node (0) at (-2.3,0) {}; \node (A) at (0,0) [node] {}; @@ -1239,8 +846,8 @@ \mbox{}\\[-18mm]\mbox{} -{\lstset{language=While}%%\fontsize{10}{12}\selectfont -\texttt{\lstinputlisting{../progs/loops.while}}} +??%{\lstset{language=While}%%\fontsize{10}{12}\selectfont +%\texttt{\lstinputlisting{../progs/loops.while}}} \end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%