slides/slides05.tex
author Christian Urban <christian.urban@kcl.ac.uk>
Wed, 09 Nov 2022 18:44:40 +0000
changeset 435 5d06cbea2000
parent 415 368556c8df56
child 451 a4c2a9462c2e
permissions -rw-r--r--
updated jars
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
     1
% !TEX program = xelatex
383
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
     2
\documentclass[dvipsnames,14pt,t,xelatex,aspectratio=169,xcolor={table}]{beamer}
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     3
\usepackage{../slides}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     4
\usepackage{../graphics}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     5
\usepackage{../langs}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     6
%%\usepackage{../data}
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
     7
%%\usepackage[export]{adjustbox}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
     8
\usetikzlibrary{shapes,arrows,shadows}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
     9
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    10
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    11
% Swift, example (a*)*b  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    12
\begin{filecontents}{re-swift.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    13
5   0.001
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    14
10  0.001
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    15
15  0.009
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    16
20  0.178
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    17
23  1.399
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    18
24  2.893
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    19
25  5.671
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    20
26  11.357
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    21
27  22.430
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    22
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    23
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    24
% Dart, example (a*)*b  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    25
\begin{filecontents}{re-dart.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    26
20 0.042
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    27
21 0.084
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    28
22 0.190
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    29
23 0.340
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    30
24 0.678
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    31
25 1.369
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    32
26 2.700
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    33
27 5.462
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    34
28 10.908
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    35
29 21.725
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    36
30 43.492
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    37
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    38
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    39
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    40
\begin{filecontents}{re3a.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    41
1 0.00003
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    42
500001 0.22527
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    43
1000001 0.62752
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    44
1500001 0.88485
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    45
2000001 1.39815
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    46
2500001 1.68619
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    47
3000001 1.94957
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    48
3500001 2.15878
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    49
4000001 2.59918
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    50
4500001 5.90679
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    51
5000001 13.11295
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    52
5500001 19.15376
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    53
6000001 40.16373
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    54
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    55
\begin{filecontents}{re-python2.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    56
1 0.033
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    57
5 0.036
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    58
10 0.034
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    59
15 0.036
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    60
18 0.059
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    61
19 0.084
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    62
20 0.141
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    63
21 0.248
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    64
22 0.485
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    65
23 0.878
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    66
24 1.71
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    67
25 3.40
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    68
26 7.08
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    69
27 14.12
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    70
28 26.69
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    71
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    72
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    73
\begin{filecontents}{re-js.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    74
5   0.061
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    75
10  0.061
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    76
15  0.061
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    77
20  0.070
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    78
23  0.131
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    79
25  0.308
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    80
26  0.564
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    81
28  1.994
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    82
30  7.648
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    83
31  15.881 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    84
32  32.190
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    85
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    86
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    87
\begin{filecontents}{re-java.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    88
5  0.00298
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    89
10  0.00418
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    90
15  0.00996
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    91
16  0.01710
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    92
17  0.03492
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    93
18  0.03303
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    94
19  0.05084
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    95
20  0.10177
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    96
21  0.19960
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    97
22  0.41159
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    98
23  0.82234
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
    99
24  1.70251
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   100
25  3.36112
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   101
26  6.63998
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   102
27  13.35120
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   103
28  29.81185
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   104
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   105
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   106
\begin{filecontents}{re-java9.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   107
1000  0.01410
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   108
2000  0.04882
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   109
3000  0.10609
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   110
4000  0.17456
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   111
5000  0.27530
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   112
6000  0.41116
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   113
7000  0.53741
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   114
8000  0.70261
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   115
9000  0.93981
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   116
10000 0.97419
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   117
11000 1.28697
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   118
12000 1.51387
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   119
14000 2.07079
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   120
16000 2.69846
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   121
20000 4.41823
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   122
24000 6.46077
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   123
26000 7.64373
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   124
30000 9.99446
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   125
34000 12.966885
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   126
38000 16.281621
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   127
42000 19.180228
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   128
46000 21.984721
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   129
50000 26.950203
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   130
60000 43.0327746
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   131
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   132
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   133
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   134
\hfuzz=220pt 
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   135
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   136
%\setmonofont[Scale=.88]{Consolas}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   137
%\newfontfamily{\consolas}{Consolas}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   138
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   139
\lstset{language=Scala,
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   140
        style=mystyle,
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   141
        numbersep=0pt,
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   142
        numbers=none,
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   143
        xleftmargin=0mm}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   144
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   145
\newcommand{\bl}[1]{\textcolor{blue}{#1}}     
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   146
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   147
% beamer stuff 
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   148
\renewcommand{\slidecaption}{PEP (Scala) 05, King's College London}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   149
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   150
\begin{document}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   151
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   152
\begin{frame}[t]
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   153
\frametitle{%
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   154
  \begin{tabular}{@ {}c@ {}}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   155
  \\[5mm]
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   156
  \huge PEP Scala (5) 
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   157
  \end{tabular}}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   158
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   159
  \normalsize
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   160
  \begin{center}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   161
  \begin{tabular}{ll}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   162
    Email:  & christian.urban at kcl.ac.uk\\
383
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   163
    %Office: & N\liningnums{7.07} (North Wing, Bush House)\bigskip\\
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   164
    Slides \& Code: & KEATS\bigskip\\
383
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   165
    %                & \onslide<2>{\alert{PDF: A Crash-Course in Scala}}\bigskip\\
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   166
    %Office Hours: &  Thursdays 12:00 -- 14:00\\
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   167
    %Additionally: & (for Scala) Tuesdays 10:45 -- 11:45\\
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   168
    \multicolumn{2}{c}{\Large\textbf{https://pollev.com/cfltutoratki576}}\\[2cm]
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   169
  \end{tabular}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   170
  \end{center}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   171
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   172
\end{frame}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   173
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   174
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   175
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   176
\begin{frame}<1>[c]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   177
  \frametitle{Main 3: Regexes}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   178
  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   179
\begin{center}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   180
  \mbox{Graphs: regex \alert{\texttt{(a*)*b}} and strings $\underbrace{\;\texttt{a}\ldots \texttt{a}\;}_{n}$}\bigskip
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   181
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   182
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   183
  \small  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   184
\begin{tabular}[t]{@{\hspace{-8mm}}c@{\hspace{-0mm}}c@{}}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   185
\only<1>{\raisebox{6mm}{\begin{tikzpicture}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   186
\begin{axis}[
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   187
    xlabel={$n$},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   188
    x label style={at={(1.05,0.0)}},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   189
    ylabel={time in secs},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   190
    enlargelimits=false,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   191
    xtick={0,5,...,30},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   192
    xmax=33,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   193
    ymax=35,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   194
    ytick={0,5,...,30},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   195
    scaled ticks=false,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   196
    axis lines=left,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   197
    width=5.5cm,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   198
    height=5cm,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   199
    legend entries={Java 8,Python,JavaScript,Swift,Dart},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   200
    %legend entries={\small{}Python,  \small{}Java 8,  \small{}JavaScript},  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   201
    legend pos=north west,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   202
    legend cell align=left]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   203
\addplot[blue,mark=*, mark options={fill=white}] table {re-python2.data};  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   204
\addplot[cyan,mark=*, mark options={fill=white}] table {re-java.data};
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   205
\addplot[red,mark=*, mark options={fill=white}] table {re-js.data};
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   206
\addplot[magenta,mark=*, mark options={fill=white}] table {re-swift.data};
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   207
\addplot[brown,mark=*, mark options={fill=white}] table {re-dart.data};
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   208
\end{axis}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   209
\end{tikzpicture}}}%
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   210
\only<2>{\raisebox{0mm}{\begin{tikzpicture}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   211
\begin{axis}[
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   212
    xlabel={$n$},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   213
    x label style={at={(1.05,0.0)}},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   214
    ylabel={time in secs},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   215
    %y label style={at={(0.06,0.5)}},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   216
    enlargelimits=false,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   217
    %xtick={0,30000,...,60000},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   218
    xmax=65000,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   219
    ymax=35,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   220
    ytick={0,5,...,30},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   221
    scaled ticks=true,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   222
    axis lines=left,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   223
    width=5.5cm,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   224
    height=5cm, 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   225
    legend entries={\small{}Java 9},  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   226
    legend pos=north west]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   227
\addplot[cyan,mark=*, mark options={fill=white}] table {re-java9.data};
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   228
\end{axis}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   229
\end{tikzpicture}}}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   230
  &
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   231
\onslide<1-2>{\begin{tikzpicture}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   232
  \begin{axis}[
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   233
    xlabel={$n$},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   234
    x label style={at={(1.05,0.0)}},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   235
    ylabel={time in secs},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   236
    enlargelimits=false,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   237
    ymax=35,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   238
    ytick={0,5,...,30},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   239
    axis lines=left,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   240
    legend entries={You in M3}, 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   241
    %%scaled ticks=false,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   242
    width=5.5cm, 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   243
    height=5cm]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   244
%%\addplot[green,mark=square*,mark options={fill=white}] table {re2a.data};    
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   245
\addplot[magenta,mark=square*,mark options={fill=white}] table {re3a.data};
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   246
\end{axis}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   247
\end{tikzpicture}}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   248
\end{tabular}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   249
\end{center}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   250
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   251
\hfill\small\url{https://vimeo.com/112065252}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   252
\end{frame}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   253
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   254
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   255
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   256
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   257
240
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   258
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   259
383
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   260
%\begin{frame}[c]
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   261
%\frametitle{Marks for Preliminary 8}
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   262
%
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   263
%Raw marks (265 submissions):\bigskip
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   264
%
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   265
%\begin{itemize}
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   266
%\item 4\%: \hspace{4mm}211
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   267
%\item 3\%: \hspace{4mm}11
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   268
%\item 2\%: \hspace{4mm}14
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   269
%\item 1\%: \hspace{4mm}8
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   270
%\item 0\%: \hspace{4mm}21
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   271
%\end{itemize}\bigskip\bigskip  
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   272
%
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   273
%\footnotesize
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   274
%(plagiarism/collusion interviews ongoing again!)
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   275
%
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   276
%\end{frame}
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   277
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   278
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   279
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   280
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   281
\begin{frame}[c]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   282
\frametitle{Plan for Today}
240
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   283
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   284
\begin{itemize}
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   285
\item Being Lazy
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   286
\item Polymorphic Types
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   287
\item Immutable OOP
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   288
\item Making Fun about Scala
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   289
\end{itemize}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   290
240
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   291
\end{frame}
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   292
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   293
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   294
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   295
\begin{frame}[c,fragile]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   296
\frametitle{How To calcululate 100 Mio Collatz Series?} 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   297
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   298
\begin{lstlisting}[language=Scala, numbers=none, xleftmargin=1mm]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   299
(1L to 100_000_000).map(collatz).max
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   300
\end{lstlisting}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   301
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   302
\end{frame}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   303
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   304
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   305
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   306
\begin{frame}[c,fragile]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   307
\frametitle{Polyorphic Types} 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   308
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   309
To be avoided:\bigskip\bigskip
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   310
\small
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   311
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   312
\begin{lstlisting}[language=Scala, numbers=none, xleftmargin=-6mm]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   313
def length_string_list(lst: List[String]): Int = 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   314
 lst match {
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   315
   case Nil => 0
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   316
   case x::xs => 1 + length_string_list(xs)
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   317
 }
240
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   318
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   319
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   320
def length_int_list(lst: List[Int]): Int = 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   321
 lst match {
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   322
   case Nil => 0
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   323
   case x::xs => 1 + length_int_list(xs)
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   324
 }
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   325
\end{lstlisting}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   326
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   327
\end{frame}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   328
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   329
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   330
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   331
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   332
\begin{frame}[c,fragile]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   333
\frametitle{Polyorphic Types} 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   334
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   335
\small
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   336
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   337
\begin{lstlisting}[language=Scala, numbers=none, xleftmargin=-6mm]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   338
def length[A](lst: List[A]): Int = lst match {
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   339
  case Nil => 0
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   340
  case x::xs => 1 + length(xs)
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   341
}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   342
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   343
length(List("1", "2", "3", "4"))
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   344
length(List(1, 2, 3, 4))
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   345
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   346
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   347
def map[A, B](lst: List[A], f: A => B): List[B] = 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   348
 lst match {
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   349
   case Nil => Nil
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   350
   case x::xs => f(x)::map(xs, f) 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   351
 }
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   352
\end{lstlisting}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   353
\end{frame}
240
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   354
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   355
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   356
2d8d198360c8 updated
Christian Urban <urbanc@in.tum.de>
parents: 239
diff changeset
   357
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   358
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   359
\begin{frame}[c]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   360
\frametitle{DFAs}  
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   361
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   362
\begin{center}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   363
\begin{tikzpicture}[>=stealth',very thick,auto,
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   364
  every state/.style={minimum size=0pt,inner sep=2pt,
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   365
    draw=blue!50,very thick,fill=blue!20},]
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   366
  
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   367
\only<1,3->{\node[state,initial] (Q_0)  {$\mbox{Q}_0$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   368
\only<2>{\node[state,initial,fill=red] (Q_0)  {$\mbox{Q}_0$};}  
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   369
\only<1,2,4->{\node[state] (Q_1) [right=of Q_0] {$\mbox{Q}_1$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   370
\only<3>{\node[state,fill=red] (Q_1) [right=of Q_0] {$\mbox{Q}_1$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   371
\only<-3,5->{\node[state] (Q_2) [below right=of Q_0] {$\mbox{Q}_2$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   372
\only<4>{\node[state,fill=red] (Q_2) [below right=of Q_0] {$\mbox{Q}_2$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   373
\only<-4,6->{\node[state] (Q_3) [right=of Q_2] {$\mbox{Q}_3$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   374
\only<5>{\node[state,fill=red] (Q_3) [right=of Q_2] {$\mbox{Q}_3$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   375
\only<-5>{\node[state, accepting] (Q_4) [right=of Q_1] {$\mbox{Q}_4$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   376
\only<6->{\node[state, accepting,fill=red] (Q_4) [right=of Q_1] {$\mbox{Q}_4$};}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   377
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   378
\path[->] (Q_0) edge node [above]  {\alert{$a$}} (Q_1);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   379
\path[->] (Q_1) edge node [above]  {\alert{$a$}} (Q_4);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   380
\path[->] (Q_4) edge [loop right] node  {\alert{$a, b$}} ();
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   381
\path[->] (Q_3) edge node [right]  {\alert{$a$}} (Q_4);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   382
\path[->] (Q_2) edge node [above]  {\alert{$a$}} (Q_3);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   383
\path[->] (Q_1) edge node [right]  {\alert{$b$}} (Q_2);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   384
\path[->] (Q_0) edge node [above]  {\alert{$b$}} (Q_2);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   385
\path[->] (Q_2) edge [loop left] node  {\alert{$b$}} ();
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   386
\path[->] (Q_3) edge [bend left=95, looseness=1.3] node [below]  {\alert{$b$}} (Q_0);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   387
\end{tikzpicture}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   388
\end{center}
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   389
383
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   390
\begin{textblock}{10}(4,12)
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   391
\LARGE{}\phantom{b}
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   392
\only<-2>{\boldmath\textcolor{gray}{$a$}}\only<3->{\boldmath\alert{$a$}}%
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   393
\only<-3>{\boldmath\textcolor{gray}{$b$}}\only<4->{\boldmath\alert{$b$}}%
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   394
\only<-4>{\boldmath\textcolor{gray}{$a$}}\only<5->{\boldmath\alert{$a$}}%
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   395
\only<-5>{\boldmath\textcolor{gray}{$a$}}\only<6->{\boldmath\alert{$a$}}%
72d6a4af4b4a updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 328
diff changeset
   396
\only<-6>{\boldmath\textcolor{gray}{$a$}}\only<7->{\boldmath\alert{$a\quad\Rightarrow \textbf{yes}$}}% 
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   397
\end{textblock}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   398
  
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   399
\end{frame}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   400
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   401
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   402
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   403
\begin{frame}[t]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   404
\frametitle{DFAs}
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   405
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   406
A \alert{\bf deterministic finite automaton} (DFA) consists of
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   407
5 things:
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   408
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   409
\begin{itemize}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   410
\item an alphabet \bl{$\varSigma$}  
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   411
\item a set of states \bl{$\mbox{Qs}$}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   412
\item one of these states is the start state \bl{$\mbox{Q}_0$}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   413
\item some states are accepting states \bl{$F$}, and
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   414
\item there is transition function \bl{$\delta$}\bigskip 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   415
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   416
\small
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   417
which takes a state  and a character as arguments and produces a 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   418
new state; this function might not be everywhere defined 
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   419
\end{itemize}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   420
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   421
\begin{center}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   422
\bl{$A(\varSigma, \mbox{Qs}, \mbox{Q}_0, F, \delta)$}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   423
\end{center}
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   424
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   425
\end{frame}
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   426
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   427
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   428
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   429
\begin{frame}[c]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   430
\frametitle{NFAs}  
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   431
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   432
\begin{center}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   433
\begin{tikzpicture}[>=stealth',very thick, auto,
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   434
    every state/.style={minimum size=0pt,inner sep=3pt,
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   435
      draw=blue!50,very thick,fill=blue!20},scale=2]
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   436
\node[state,initial]  (Q_0)  {$\mbox{Q}_0$};
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   437
\node[state] (Q_1) [right=of Q_0] {$\mbox{Q}_1$};
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   438
\node[state, accepting] (Q_2) [right=of Q_1] {$\mbox{Q}_2$};
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   439
\path[->] (Q_0) edge [loop above] node  {\alert{$b$}} ();
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   440
\path[<-] (Q_0) edge node [below]  {\alert{$b$}} (Q_1);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   441
\path[->] (Q_0) edge [bend left] node [above]  {\alert{$a$}} (Q_1);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   442
\path[->] (Q_0) edge [bend right=45,looseness=1.3] node [below]  {\alert{$a$}} (Q_2);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   443
\path[->] (Q_1) edge [loop above] node  {\alert{$a,b$}} ();
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   444
\path[->] (Q_1) edge node  [above] {\alert{$a$}} (Q_2);
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   445
\end{tikzpicture}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   446
\end{center}
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   447
327
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   448
\end{frame}
094996b2de7a updated
Christian Urban <urbanc@in.tum.de>
parents: 265
diff changeset
   449
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   450
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   451
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   452
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   453
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   454
\begin{frame}[c]
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   455
\frametitle{Where to go on from here?}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   456
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   457
\begin{itemize}
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 383
diff changeset
   458
\item Martin Odersky (EPFL) developed Scala 3.0\medskip
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   459
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   460
\item Elm (\url{http://elm-lang.org})\ldots web applications with style\medskip   
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   461
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   462
\item Haskell, Ocaml, Standard ML, Scheme, \ldots 
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   463
\end{itemize}  
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   464
\end{frame}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   465
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   466
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   467
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   468
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   469
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   470
\begin{frame}[c,fragile]
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   471
\frametitle{\alert{Questions?}}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   472
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   473
{\tiny
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   474
\begin{verbatim}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   475
                               *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   476
                              * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   477
                             *   *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   478
                            * * * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   479
                           *       *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   480
                          * *     * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   481
                         *   *   *   *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   482
                        * * * * * * * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   483
                       *               *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   484
                      * *             * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   485
                     *   *           *   *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   486
                    * * * *         * * * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   487
                   *       *       *       *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   488
                  * *     * *     * *     * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   489
                 *   *   *   *   *   *   *   *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   490
                * * * * * * * * * * * * * * * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   491
               *                               *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   492
              * *                             * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   493
             *   *                           *   *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   494
            * * * *                         * * * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   495
           *       *                       *       *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   496
          * *     * *                     * *     * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   497
         *   *   *   *                   *   *   *   *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   498
        * * * * * * * *                 * * * * * * * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   499
       *               *               *               *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   500
      * *             * *             * *             * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   501
     *   *           *   *           *   *           *   *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   502
    * * * *         * * * *         * * * *         * * * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   503
   *       *       *       *       *       *       *       *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   504
  * *     * *     * *     * *     * *     * *     * *     * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   505
 *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   506
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   507
\end{verbatim}}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   508
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   509
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   510
\begin{textblock}{6}(8.5,3.5)
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   511
\begin{bubble}[5cm]
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   512
\footnotesize
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   513
\begin{lstlisting}[language=Scala, numbers=none, xleftmargin=-1mm]
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   514
++++++++[>+>++++<<-]>++>>
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   515
+<[-[>>+<<-]+>>]>+[-<<<[-
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   516
>[+[-]+>++>>>-<<]<[<]>>++
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   517
++++[<<+++++>>-]+<<++.[-]
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   518
<<]>.>+[>>]>+]
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   519
\end{lstlisting}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   520
\end{bubble}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   521
\end{textblock}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   522
  
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   523
\end{frame}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   524
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   525
328
b217232e9246 updated
Christian Urban <urbanc@in.tum.de>
parents: 327
diff changeset
   526
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
239
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   527
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   528
\end{document}
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   529
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   530
%%% Local Variables:  
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   531
%%% mode: latex
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   532
%%% TeX-master: t
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   533
%%% End: 
e05032a1c102 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   534