added
authorChristian Urban <christian dot urban at kcl dot ac dot uk>
Tue, 24 Sep 2013 23:16:00 +0100
changeset 97 60a3ba90dd53
parent 96 9fcd3de53c06
child 98 1f3d89fe9820
added
progs/app2.scala
progs/app3.scala
progs/app4.scala
slides/beamerthemeplainculight.sty
slides/slides01.pdf
slides/slides01.tex
--- a/progs/app2.scala	Tue Sep 24 01:56:53 2013 +0100
+++ b/progs/app2.scala	Tue Sep 24 23:16:00 2013 +0100
@@ -10,7 +10,8 @@
   if (n == 0) ()
   else {
     println(s"Visiting: $n $url")
-    for (u <- get_all_URLs(get_page(url))) crawl(u, n - 1)
+    for (u <- get_all_URLs(get_page(url))) 
+      crawl(u, n - 1)
   }
 }
 
--- a/progs/app3.scala	Tue Sep 24 01:56:53 2013 +0100
+++ b/progs/app3.scala	Tue Sep 24 23:16:00 2013 +0100
@@ -5,6 +5,7 @@
   else if (my_urls.findFirstIn(url) == None) ()
   else {
     println(s"Visiting: $n $url")
-    for (u <- get_all_URLs(get_page(url))) crawl(u, n - 1)
+    for (u <- get_all_URLs(get_page(url))) 
+      crawl(u, n - 1)
   }
 }
--- a/progs/app4.scala	Tue Sep 24 01:56:53 2013 +0100
+++ b/progs/app4.scala	Tue Sep 24 23:16:00 2013 +0100
@@ -9,6 +9,7 @@
     println(s"Visiting: $n $url")
     val page = get_page(url)
     println(email_pattern.findAllIn(page).mkString("\n"))
-    for (u <- get_all_URLs(page)) crawl(u, n - 1)
+    for (u <- get_all_URLs(page)) 
+      crawl(u, n - 1)
   }
 }
--- a/slides/beamerthemeplainculight.sty	Tue Sep 24 01:56:53 2013 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-%%\Providespackage{beamerthemeplainculight}[2003/11/07 ver 0.93]
-\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-
-% Copyright 2003 by Till Tantau <tantau@cs.tu-berlin.de>.
-%
-% This program can be redistributed and/or modified under the terms
-% of the LaTeX Project Public License Distributed from CTAN
-% archives in directory macros/latex/base/lppl.txt.
- 
-\newcommand{\slidecaption}{}
-
-\mode<presentation>
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% comic fonts fonts
-\DeclareFontFamily{T1}{comic}{}%
-\DeclareFontShape{T1}{comic}{m}{n}{<->s*[.9]comic8t}{}%
-\DeclareFontShape{T1}{comic}{m}{it}{<->s*[.9]comic8t}{}%
-\DeclareFontShape{T1}{comic}{m}{sc}{<->s*[.9]comic8t}{}%
-\DeclareFontShape{T1}{comic}{b}{n}{<->s*[.9]comicbd8t}{}%
-\DeclareFontShape{T1}{comic}{b}{it}{<->s*[.9]comicbd8t}{}%
-\DeclareFontShape{T1}{comic}{m}{sl}{<->ssub * comic/m/it}{}%
-\DeclareFontShape{T1}{comic}{b}{sc}{<->sub * comic/m/sc}{}%
-\DeclareFontShape{T1}{comic}{b}{sl}{<->ssub * comic/b/it}{}%
-\DeclareFontShape{T1}{comic}{bx}{n}{<->ssub * comic/b/n}{}%
-\DeclareFontShape{T1}{comic}{bx}{it}{<->ssub * comic/b/it}{}%
-\DeclareFontShape{T1}{comic}{bx}{sc}{<->sub * comic/m/sc}{}%
-\DeclareFontShape{T1}{comic}{bx}{sl}{<->ssub * comic/b/it}{}%
-%
-\renewcommand{\rmdefault}{comic}%
-\renewcommand{\sfdefault}{comic}%
-\renewcommand{\mathfamilydefault}{cmr}% mathfont should be still the old one
-%
-\DeclareMathVersion{bold}% mathfont needs to be bold
-\DeclareSymbolFont{operators}{OT1}{cmr}{b}{n}%
-\SetSymbolFont{operators}{bold}{OT1}{cmr}{b}{n}%
-\DeclareSymbolFont{letters}{OML}{cmm}{b}{it}%
-\SetSymbolFont{letters}{bold}{OML}{cmm}{b}{it}%
-\DeclareSymbolFont{symbols}{OMS}{cmsy}{b}{n}%
-\SetSymbolFont{symbols}{bold}{OMS}{cmsy}{b}{n}%
-\DeclareSymbolFont{largesymbols}{OMX}{cmex}{b}{n}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Frametitles
-\setbeamerfont{frametitle}{size={\LARGE}}
-\setbeamerfont{frametitle}{family={\usefont{T1}{ptm}{b}{n}}}
-\setbeamercolor{frametitle}{fg=ProcessBlue,bg=white}
-
-\setbeamertemplate{frametitle}{%
-\vskip 2mm  % distance from the top margin
-\hskip -3mm % distance from left margin
-\vbox{%
-\begin{minipage}{1.05\textwidth}%
-\centering%
-\insertframetitle%
-\end{minipage}}%
-}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Foot
-%
-\setbeamertemplate{navigation symbols}{} 
-\usefoottemplate{%
-\vbox{%
-  \tinyline{%
-    \tiny\hfill\textcolor{gray!50}{\slidecaption{} --
-      p.~\insertframenumber/\inserttotalframenumber}}}%
-}
-
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\beamertemplateballitem
-\setlength\leftmargini{2mm}
-\setlength\leftmarginii{0.6cm}
-\setlength\leftmarginiii{1.5cm}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% blocks
-%\definecolor{cream}{rgb}{1,1,.65}
-\definecolor{cream}{rgb}{1,1,.8}
-\setbeamerfont{block title}{size=\normalsize}
-\setbeamercolor{block title}{fg=black,bg=cream}
-\setbeamercolor{block body}{fg=black,bg=cream}
-
-\setbeamertemplate{blocks}[rounded][shadow=true]
-
-\setbeamercolor{boxcolor}{fg=black,bg=cream}
-
-\mode
-<all>
-
-
-
-
-
-
Binary file slides/slides01.pdf has changed
--- a/slides/slides01.tex	Tue Sep 24 01:56:53 2013 +0100
+++ b/slides/slides01.tex	Tue Sep 24 23:16:00 2013 +0100
@@ -76,7 +76,7 @@
 	showstringspaces=false}
 
 % beamer stuff 
-\renewcommand{\slidecaption}{AFL 01, King's College London, 26.~September 2012}
+\renewcommand{\slidecaption}{AFL 01, King's College London, 25.~September 2013}
 
 
 \begin{document}
@@ -201,7 +201,7 @@
 \frametitle{\begin{tabular}{c}This Course\end{tabular}}
 
 \begin{itemize}
-\item the ultimate goal is to implement a small compiler (really small one)\bigskip
+\item the ultimate goal is to implement a small compiler (a really small one for the JVM)\bigskip
 \end{itemize}
 
 Let's start with:
@@ -257,19 +257,16 @@
 \begin{frame}[c]
 \frametitle{\begin{tabular}{c}Scala\end{tabular}}
 
-\footnotesize a simple Scala function for reading webpages\\[-3mm]
+\small a simple Scala function for reading webpages\\[-3mm]
 
-{\lstset{language=Scala}\fontsize{8}{10}\selectfont
-\texttt{\lstinputlisting{../progs/app0.scala}}}\pause
-{\lstset{language=Scala}\fontsize{8}{10}\selectfont
-\texttt{\lstinline{get_page("""http://www.inf.kcl.ac.uk/staff/urbanc/""")}}}\pause\bigskip
+{\lstset{language=Scala}\texttt{\lstinputlisting{../progs/app0.scala}}}\pause
+{\lstset{language=Scala}\texttt{\lstinline{get_page("""http://www.inf.kcl.ac.uk/staff/urbanc/""")}}}\pause\bigskip
 
 
-\footnotesize slightly more complicated for handling errors properly:\\[-3mm]
+\small slightly more complicated for handling errors properly:\\[-3mm]
 
-\footnotesize
-{\lstset{language=Scala}\fontsize{8}{10}\selectfont
-\texttt{\lstinputlisting{../progs/app1.scala}}}
+\small
+{\lstset{language=Scala}\texttt{\lstinputlisting{../progs/app1.scala}}}
 
 
 \end{frame}}
@@ -322,11 +319,10 @@
 \mode<presentation>{
 \begin{frame}[c]
 
-{\lstset{language=Scala}\fontsize{8}{10}\selectfont
-\texttt{\lstinputlisting{../progs/app2.scala}}}\medskip
+\small
+{\lstset{language=Scala}\texttt{\lstinputlisting{../progs/app2.scala}}}\medskip
 
-{\lstset{language=Scala}\fontsize{8}{10}\selectfont
-\texttt{crawl(some\_start\_URL, 2)}}\
+{\lstset{language=Scala}\texttt{crawl(some\_start\_URL, 2)}}\
 
 \end{frame}}
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
@@ -338,8 +334,8 @@
 \footnotesize
 a version that only ``crawls'' links in my domain:
 
-{\lstset{language=Scala}\fontsize{8}{10}\selectfont
-\texttt{\lstinputlisting{../progs/app3.scala}}}
+\small
+{\lstset{language=Scala}\texttt{\lstinputlisting{../progs/app3.scala}}}
 
 
 \end{frame}}
@@ -352,8 +348,8 @@
 \footnotesize
 a little email ``harvester'':
 
-{\lstset{language=Scala}\fontsize{8}{10}\selectfont
-\texttt{\lstinputlisting{../progs/app4.scala}}}\bigskip
+\small
+{\lstset{language=Scala}\texttt{\lstinputlisting{../progs/app4.scala}}}\bigskip
 
 \tiny
 \textcolor{gray}{\url{http://net.tutsplus.com/tutorials/other/8-regular-expressions-you-should-know/}}
@@ -451,11 +447,11 @@
 
 \begin{itemize}
 \item regular expressions / regular expression matching
+\item derivatives 
 \item automata
-\item the Myhill-Nerode theorem
 \item parsing
 \item grammars
-\item a small interpreter / web browser
+\item a small interpreter / compiler
 \end{itemize}
 
 \end{frame}}