# HG changeset patch # User cu # Date 1506593051 -3600 # Node ID 9eeb7516a65694db48dcfccf9dfd51020aece2da # Parent b96f44755c5159b4feffa4e8f2e3c57c4b09d3ef typos diff -r b96f44755c51 -r 9eeb7516a656 handouts/graphs.pdf Binary file handouts/graphs.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho01.pdf Binary file handouts/ho01.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho02.pdf Binary file handouts/ho02.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho02.tex --- a/handouts/ho02.tex Wed Sep 27 21:29:25 2017 +0100 +++ b/handouts/ho02.tex Thu Sep 28 11:04:11 2017 +0100 @@ -23,7 +23,7 @@ match the strings). To see the substantial differences in the left and right plots below, note the different scales of the $x$-axes. - + \begin{center} Graphs: $(a^*)^* \cdot b$ and strings $\underbrace{a\ldots a}_{n}$ \begin{tabular}{@{}cc@{}} @@ -282,7 +282,7 @@ that they hold. As an aside, there has been a lot of research about questions like: Can one always decide when two regular expressions are equivalent or not? What does an algorithm look like to decide this -efficiently? +efficiently? So in general it is not a trivial problem. \subsection*{The Matching Algorithm} @@ -726,7 +726,7 @@ \end{center} \noindent -To reacap, Python and Ruby needed approximately 30 seconds to match a +To recap, Python and Ruby needed approximately 30 seconds to match a string of 28 \texttt{a}s and the regular expression $a^{?\{n\}} \cdot a^{\{n\}}$. We need a third of this time to do the same with strings up to 11,000 \texttt{a}s. Similarly, Java and Python needed 30 @@ -774,7 +774,7 @@ but it seems it is a combination of the clauses for \texttt{ALT} and \texttt{SEQ}. In the latter case we call \texttt{der} with a single character and this potentially produces an alternative. -The derivative of such an alternative can then be more effeciently +The derivative of such an alternative can then be more efficiently calculated by \texttt{ders2} since it pushes a whole string under an \texttt{ALT}. The numbers are that in the second case $(a^*)^* \cdot b$ both versions are pretty much the same, but in the @@ -1046,7 +1046,7 @@ recipes} is already a big step in actually performing these proofs. If you do not believe it, proofs have helped me to make sure my code is correct and in several instances prevented me of letting slip -embarassing mistakes into the `wild'. +embarrassing mistakes into the `wild'. \end{document} diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho03.pdf Binary file handouts/ho03.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho04.pdf Binary file handouts/ho04.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho05.pdf Binary file handouts/ho05.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho06.pdf Binary file handouts/ho06.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho07.pdf Binary file handouts/ho07.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/ho08.pdf Binary file handouts/ho08.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/notation.pdf Binary file handouts/notation.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 handouts/scala-ho.pdf Binary file handouts/scala-ho.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 pics/compcert.png Binary file pics/compcert.png has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides01.pdf Binary file slides/slides01.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides01.tex --- a/slides/slides01.tex Wed Sep 27 21:29:25 2017 +0100 +++ b/slides/slides01.tex Thu Sep 28 11:04:11 2017 +0100 @@ -6,9 +6,6 @@ \hfuzz=220pt -%\setmonofont[Scale=.88]{Consolas} -%\newfontfamily{\consolas}{Consolas} - \lstset{language=Scala, style=mystyle, numbersep=0pt, @@ -25,7 +22,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame}[t] -\frametitle{% +\frametitle{% \begin{tabular}{@ {}c@ {}} \\[-3mm] \LARGE Compilers and \\[-1mm] @@ -38,7 +35,7 @@ %\footnotesize\textcolor{gray}{Antikythera automaton, 100 BC (Archimedes?)} \end{center} -\normalsize + \normalsize \begin{center} \begin{tabular}{ll} Email: & christian.urban at kcl.ac.uk\\ @@ -47,7 +44,6 @@ \end{tabular} \end{center} - \end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -266,11 +262,10 @@ \small\centering matching \texttt{[a?]\{n\}[a]\{n\}} and \texttt{[a*]*b} against $\underbrace{\texttt{a}...\texttt{a}}_n$ -\end{frame} +\end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame}[c] \frametitle{Lectures 1 - 5} diff -r b96f44755c51 -r 9eeb7516a656 slides/slides02.pdf Binary file slides/slides02.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides02.tex --- a/slides/slides02.tex Wed Sep 27 21:29:25 2017 +0100 +++ b/slides/slides02.tex Thu Sep 28 11:04:11 2017 +0100 @@ -1122,7 +1122,7 @@ \lstinputlisting[numbers=none]{../progs/app52.scala} \end{bubble} \end{textblock}} - + \end{frame} diff -r b96f44755c51 -r 9eeb7516a656 slides/slides03.pdf Binary file slides/slides03.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides04.pdf Binary file slides/slides04.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides05.pdf Binary file slides/slides05.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides06.pdf Binary file slides/slides06.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides07.pdf Binary file slides/slides07.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides08.pdf Binary file slides/slides08.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides09.pdf Binary file slides/slides09.pdf has changed diff -r b96f44755c51 -r 9eeb7516a656 slides/slides10.pdf Binary file slides/slides10.pdf has changed