242 \\[-3mm] |
242 \\[-3mm] |
243 \LARGE Compilers and \\[-1mm] |
243 \LARGE Compilers and \\[-1mm] |
244 \LARGE Formal Languages\\[-3mm] |
244 \LARGE Formal Languages\\[-3mm] |
245 \end{tabular}} |
245 \end{tabular}} |
246 |
246 |
247 %\begin{center} |
247 |
248 %\includegraphics[scale=0.3]{pics/ante1.jpg}\hspace{5mm} |
|
249 %\includegraphics[scale=0.31]{pics/ante2.jpg}\\ |
|
250 %\footnotesize\textcolor{gray}{Antikythera automaton, 100 BC (Archimedes?)} |
|
251 %\end{center} |
|
252 |
248 |
253 \normalsize |
249 \normalsize |
254 \begin{center} |
250 \begin{center} |
255 \begin{tabular}{ll} |
251 \begin{tabular}{ll} |
256 Email: & christian.urban at kcl.ac.uk\\ |
252 Email: & christian.urban at kcl.ac.uk\\ |
275 \end{tabular}% |
271 \end{tabular}% |
276 }; |
272 }; |
277 \end{tikzpicture} |
273 \end{tikzpicture} |
278 \end{center} |
274 \end{center} |
279 |
275 |
|
276 |
|
277 \begin{textblock}{5}(12,3) |
|
278 \includegraphics[scale=0.35]{qr01}\\ |
|
279 \small Wifi: IET-Guest |
|
280 \end{textblock} |
280 \end{frame} |
281 \end{frame} |
281 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
282 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
282 |
283 |
283 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
284 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
284 \begin{frame}<1-12>[c] |
285 \begin{frame}<1-12>[c] |
2056 |
2057 |
2057 |
2058 |
2058 \begin{tabular}{lll} |
2059 \begin{tabular}{lll} |
2059 SGT TAs: & Flavio Melinte Citea\\ |
2060 SGT TAs: & Flavio Melinte Citea\\ |
2060 & Zoltan Meszaros\bigskip\\ |
2061 & Zoltan Meszaros\bigskip\\ |
2061 Amm Helpers & Flavio Melinte Citea & (flavio.melinte\_citea@kcl.ac.uk)\\ |
2062 Amm + Github & Flavio Melinte Citea & (flavio.melinte\_citea@kcl.ac.uk)\\ |
2062 & Zishan Rahman & (zishan.rahman@kcl.ac.uk)\medskip\\ |
2063 Helpers & Zishan Rahman & (zishan.rahman@kcl.ac.uk)\medskip\\ |
2063 \end{tabular} |
2064 \end{tabular} |
2064 \mbox{} |
2065 \mbox{} |
2065 \end{frame} |
2066 \end{frame} |
2066 |
2067 |
2067 \begin{frame}[c] |
2068 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
2068 \end{frame} |
2069 \begin{frame}[c] |
2069 |
2070 |
2070 \begin{frame}[c] |
2071 \begin{center} |
2071 \end{frame} |
2072 \begin{tabular}{c} |
2072 |
2073 \includegraphics[scale=0.024]{awards.jpeg}\\ |
2073 \begin{frame}[c] |
2074 \small I try my best, but \ldots |
2074 \end{frame} |
2075 \end{tabular} |
2075 |
2076 \end{center} |
2076 \begin{frame}[c] |
2077 \mbox{} |
2077 \end{frame} |
2078 \end{frame} |
2078 |
2079 |
2079 \begin{frame}[c] |
2080 \begin{frame}[c] |
2080 \end{frame} |
2081 \end{frame} |
2081 |
2082 |
2082 \begin{frame}[c] |
2083 \begin{frame}[c] |
2083 \end{frame} |
2084 \end{frame} |
2084 |
2085 |
2085 \begin{frame}[c] |
2086 \begin{frame}[c] |
2086 \end{frame} |
2087 \end{frame} |
2087 |
2088 |
2088 \begin{frame}[c] |
2089 \begin{frame}[c] |
2089 \end{frame} |
2090 \end{frame} |
2090 |
2091 |
2091 \begin{frame}[c] |
2092 \begin{frame}[c] |
2092 \end{frame} |
2093 \end{frame} |
2093 |
2094 |
2094 \begin{frame}[c] |
2095 \begin{frame}[c] |
2095 \end{frame} |
2096 \end{frame} |
2096 |
2097 |
2097 \begin{frame}[c] |
2098 \begin{frame}[c] |
2098 \end{frame} |
2099 \end{frame} |
2099 |
2100 |
2100 \begin{frame}[c] |
2101 \begin{frame}[c] |
2101 \end{frame} |
2102 \end{frame} |
2102 |
2103 |
2103 \begin{frame}[c] |
2104 \begin{frame}[c] |
2104 \end{frame} |
2105 \end{frame} |
2105 |
2106 |
2106 \begin{frame}[c] |
2107 \begin{frame}[c] |
2107 \end{frame} |
2108 \end{frame} |
2108 |
2109 |
2109 |
2110 \begin{frame}[c] |
2110 \begin{frame}[c] |
2111 \end{frame} |
2111 \begin{mybox3}{Coursework} |
2112 |
2112 Do we need to provide instructions on running the coursework files |
2113 \begin{frame}[c] |
2113 if we're using languages other than Scala? Thanks |
2114 \end{frame} |
2114 \end{mybox3}\pause |
2115 |
2115 |
2116 \begin{frame}[c] |
2116 \begin{mybox2}{Zip-File for Coursework} |
2117 \end{frame} |
2117 Please, please submit a zipfile that generates a subdirectory |
2118 |
2118 \begin{center} |
2119 \begin{frame}[c] |
2119 \texttt{NameFamilyName} |
2120 \end{frame} |
2120 \end{center} |
|
2121 \end{mybox2} |
|
2122 \end{frame} |
|
2123 |
|
2124 |
2121 |
2125 \begin{frame}[c] |
2122 \begin{frame}[c] |
2126 \begin{mybox3}{What is the trick?}\small |
2123 \begin{mybox3}{What is the trick?}\small |
2127 What was the trick to improve the evil regular expressions matcher |
2124 What was the trick to improve the evil regular expressions matcher |
2128 to have such good results compared to other programming languages? |
2125 to have such good results compared to other programming languages? |
2129 Is it working better on casual regular expressions (the ones that |
2126 Is it working better on casual regular expressions (the ones that |
2130 Python and Java handle pretty well), too? Or was it just optimised |
2127 Python and Java handle pretty well), too? Or was it just optimised |
2131 for these evil ones? |
2128 for these evil ones? |
|
2129 \end{mybox3} |
|
2130 \end{frame} |
|
2131 |
|
2132 \begin{frame}[c] |
|
2133 \begin{mybox3}{No Regex at Amazon AWS}\small |
|
2134 My friend who works at Amazon AWS told me they try to avoid |
|
2135 regexes whenever they can. So kind of echoes this joke from the week |
|
2136 1 handout. |
|
2137 |
|
2138 \begin{quote} |
|
2139 “Sometimes you have a programming problem and it seems like the |
|
2140 best solution is to use regular expressions; now you have two problems.” |
|
2141 \end{quote} |
|
2142 |
2132 \end{mybox3} |
2143 \end{mybox3} |
2133 \end{frame} |
2144 \end{frame} |
2134 |
2145 |
2135 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
2146 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
2136 \begin{frame}[c] |
2147 \begin{frame}[c] |