slides/slides04.tex
author Christian Urban <christian.urban@kcl.ac.uk>
Mon, 21 Jul 2025 16:38:07 +0100
changeset 491 2a30c7dfe3ed
parent 478 0e6ca70496c1
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
     1
% !TEX program = xelatex
446
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
     2
\documentclass[dvipsnames,14pt,t,xelatex,aspectratio=169,xcolor={table}]{beamer}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
     3
\usepackage{../styles/slides}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
     4
\usepackage{../styles/mygraphs}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
     5
\usepackage{../styles/langs}
155
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
     6
%%\usepackage{../data}
67
ca5884c2e3bd updated
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
     7
\usepackage[export]{adjustbox}
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
     8
\usetikzlibrary{shapes}
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     9
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    10
\hfuzz=220pt 
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    11
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    12
%\setmonofont[Scale=.88]{Consolas}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    13
%\newfontfamily{\consolas}{Consolas}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    14
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    15
\lstset{language=Scala,
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    16
        style=mystyle,
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    17
        numbersep=0pt,
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    18
        numbers=none,
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    19
        xleftmargin=0mm}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    20
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    21
\newcommand{\LEFTarrow}[3]{%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    22
\begin{textblock}{0}(#2,#3)%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    23
\onslide<#1>{%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    24
\begin{tikzpicture}%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    25
\node at (0,0) [single arrow, shape border rotate=180, fill=red,text=red]{a};%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    26
\end{tikzpicture}}%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    27
\end{textblock}}
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    28
\newcommand{\DOWNarrow}[3]{%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    29
\begin{textblock}{0}(#2,#3)%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    30
\onslide<#1>{%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    31
\begin{tikzpicture}%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    32
\node at (0,0) [single arrow, shape border rotate=270, fill=red,text=red]{a};%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    33
\end{tikzpicture}}%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    34
\end{textblock}}
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    35
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    36
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    37
\newcommand{\bl}[1]{\textcolor{blue}{#1}}     
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    38
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    39
% beamer stuff 
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
    40
\renewcommand{\slidecaption}{PEP (Scala) 04, King's College London}
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    41
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    42
% Swift, example (a*)*b  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    43
\begin{filecontents}{re-swift.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    44
5   0.001
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    45
10  0.001
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    46
15  0.009
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    47
20  0.178
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    48
23  1.399
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    49
24  2.893
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    50
25  5.671
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    51
26  11.357
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    52
27  22.430
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    53
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    54
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    55
% Dart, example (a*)*b  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    56
\begin{filecontents}{re-dart.data}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    57
20 0.042
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    58
21 0.084
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    59
22 0.190
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    60
23 0.340
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    61
24 0.678
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    62
25 1.369
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    63
26 2.700
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    64
27 5.462
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    65
28 10.908
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    66
29 21.725
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    67
30 43.492
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    68
\end{filecontents}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    69
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
    70
155
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    71
\begin{filecontents}{re3a.data}
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    72
1 0.00003
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    73
500001 0.22527
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    74
1000001 0.62752
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    75
1500001 0.88485
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    76
2000001 1.39815
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    77
2500001 1.68619
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    78
3000001 1.94957
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    79
3500001 2.15878
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    80
4000001 2.59918
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    81
4500001 5.90679
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    82
5000001 13.11295
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    83
5500001 19.15376
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    84
6000001 40.16373
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    85
\end{filecontents}
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    86
\begin{filecontents}{re-python2.data}
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    87
1 0.033
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    88
5 0.036
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    89
10 0.034
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    90
15 0.036
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    91
18 0.059
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    92
19 0.084
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    93
20 0.141
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    94
21 0.248
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    95
22 0.485
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    96
23 0.878
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    97
24 1.71
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    98
25 3.40
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
    99
26 7.08
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   100
27 14.12
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   101
28 26.69
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   102
\end{filecontents}
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   103
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   104
\begin{filecontents}{re-js.data}
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   105
5   0.061
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   106
10  0.061
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   107
15  0.061
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   108
20  0.070
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   109
23  0.131
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   110
25  0.308
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   111
26  0.564
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   112
28  1.994
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   113
30  7.648
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   114
31  15.881 
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   115
32  32.190
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   116
\end{filecontents}
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   117
155
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   118
\begin{filecontents}{re-java.data}
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   119
5  0.00298
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   120
10  0.00418
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   121
15  0.00996
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   122
16  0.01710
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   123
17  0.03492
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   124
18  0.03303
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   125
19  0.05084
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   126
20  0.10177
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   127
21  0.19960
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   128
22  0.41159
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   129
23  0.82234
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   130
24  1.70251
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   131
25  3.36112
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   132
26  6.63998
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   133
27  13.35120
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   134
28  29.81185
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   135
\end{filecontents}
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   136
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   137
\begin{filecontents}{re-java9.data}
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   138
1000  0.01410
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   139
2000  0.04882
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   140
3000  0.10609
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   141
4000  0.17456
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   142
5000  0.27530
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   143
6000  0.41116
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   144
7000  0.53741
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   145
8000  0.70261
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   146
9000  0.93981
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   147
10000 0.97419
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   148
11000 1.28697
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   149
12000 1.51387
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   150
14000 2.07079
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   151
16000 2.69846
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   152
20000 4.41823
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   153
24000 6.46077
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   154
26000 7.64373
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   155
30000 9.99446
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   156
34000 12.966885
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   157
38000 16.281621
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   158
42000 19.180228
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   159
46000 21.984721
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   160
50000 26.950203
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   161
60000 43.0327746
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   162
\end{filecontents}
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   163
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   164
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   165
\begin{document}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   166
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   167
\begin{frame}[t]
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   168
\frametitle{%
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   169
  \begin{tabular}{@ {}c@ {}}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   170
  \\[5mm]
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   171
  \huge PEP Scala (4) 
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   172
  \end{tabular}}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   173
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   174
  \normalsize
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   175
  \begin{center}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   176
  \begin{tabular}{ll}
155
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   177
    Email:  & christian.urban at kcl.ac.uk\\
478
0e6ca70496c1 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 446
diff changeset
   178
    %%Office: & N\liningnums{7.07} (North Wing, Bush House)\bigskip\\
413
f4db8336d3d5 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 379
diff changeset
   179
    Slides \& Code: & KEATS\bigskip\\
446
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   180
491
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   181
    Office Hour: &  Thursdays 13:00 -- 14:00 (send email first)\\
446
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   182
    Location: & N7.07 (North Wing, Bush House)\bigskip\\
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   183
491
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   184
    %Pollev: & \texttt{\alert{https://pollev.com/cfltutoratki576}}\\  \\
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   185
  \end{tabular}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   186
  \end{center}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   187
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   188
\end{frame}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   189
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   190
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   191
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
446
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   192
%\begin{frame}[c]
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   193
%\frametitle{Hints in CW}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   194
%
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   195
%\begin{center}  
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   196
%\includegraphics[scale=0.4]{../pics/hints.png}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   197
%\end{center}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   198
%
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   199
%\small
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   200
%\begin{itemize}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   201
%  \item Scala Library, e.g.~\texttt{span} in \\
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   202
%  \url{https://www.scala-lang.org/api/current/scala/collection/immutable/List.html}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   203
%\end{itemize}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   204
%\end{frame}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   205
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   206
  
326
7d983ee99fcc updated
Christian Urban <urbanc@in.tum.de>
parents: 325
diff changeset
   207
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
446
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   208
%\begin{frame}[c]
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   209
%\frametitle{Discussion Forum}
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   210
446
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   211
%\begin{center}  
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   212
%\includegraphics[scale=0.38]{/Users/cu/discussion.png}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   213
%\end{center}
326
7d983ee99fcc updated
Christian Urban <urbanc@in.tum.de>
parents: 325
diff changeset
   214
446
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   215
%\end{frame}
326
7d983ee99fcc updated
Christian Urban <urbanc@in.tum.de>
parents: 325
diff changeset
   216
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   217
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   218
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   219
% \begin{frame}[c]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   220
% \frametitle{Preliminary 7}
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   221
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   222
% Raw marks (261 submissions):\bigskip
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   223
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   224
% \begin{itemize}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   225
% \item 4\%: \hspace{4mm}236
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   226
% \item 3\%: \hspace{4mm}10
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   227
% \item 2\%: \hspace{4mm}1
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   228
% \item 1\%: \hspace{4mm}0
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   229
% \item 0\%: \hspace{4mm}15 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   230
% \end{itemize}\bigskip\bigskip  
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   231
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   232
% \footnotesize
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   233
% (plagiarism/collusion interviews ongoing!)
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   234
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   235
% \end{frame}
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   236
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   237
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   238
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   239
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   240
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   241
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   242
% \begin{frame}[c,fragile]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   243
% \small
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   244
  
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   245
% \begin{lstlisting}[language=Scala, numbers=none, xleftmargin=1mm]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   246
% def is_legal(dim: Int, p: Path, x: Pos) = {
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   247
%   if (...some_really_long_condition...) false
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   248
%   else true
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   249
% }
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   250
% \end{lstlisting}
67
ca5884c2e3bd updated
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
   251
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   252
% \pause
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   253
% \bigskip
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   254
% \rule{11cm}{0.3mm}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   255
% \bigskip
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   256
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   257
% \begin{lstlisting}[language=Scala, numbers=none, xleftmargin=1mm]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   258
% def is_legal(dim: Int, p: Path, x: Pos) = 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   259
%   !(...some_really_long_condition...)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   260
% \end{lstlisting}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   261
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   262
% \end{frame}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   263
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   264
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   265
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   266
% \begin{frame}[c,fragile]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   267
% \small
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   268
  
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   269
% \begin{lstlisting}[language=Scala, numbers=none, xleftmargin=1mm]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   270
% def foobar(...) = {
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   271
%   val cs = for (c <- str) yield c.toLowerCase
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   272
%   ...
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   273
% }
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   274
% \end{lstlisting}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   275
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   276
% \pause
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   277
% \bigskip
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   278
% \rule{11cm}{0.3mm}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   279
% \bigskip
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   280
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   281
% \begin{lstlisting}[language=Scala, numbers=none, xleftmargin=1mm]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   282
% def foobar(...) = {
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   283
%   val cs = str.map(_.toLowerCase)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   284
%   ...
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   285
% }
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   286
% \end{lstlisting}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   287
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   288
% \end{frame}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   289
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   290
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   291
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   292
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   293
% \begin{frame}[c,fragile]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   294
% \small
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   295
  
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   296
% \begin{lstlisting}[language=Scala, numbers=none, xleftmargin=-7mm]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   297
% def RomanNumeral2Int(rs: RomanNumeral): Int = 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   298
%  rs match { 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   299
%    case Nil => 0
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   300
%    case M::r    => 1000 + RomanNumeral2Int(r)  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   301
%    case C::M::r => 900 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   302
%    case D::r    => 500 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   303
%    case C::D::r => 400 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   304
%    case C::r    => 100 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   305
%    case X::C::r => 90 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   306
%    case L::r    => 50 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   307
%    case X::L::r => 40 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   308
%    case X::r    => 10 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   309
%    case I::X::r => 9 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   310
%    case V::r    => 5 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   311
%    case I::V::r => 4 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   312
%    case I::r    => 1 + RomanNumeral2Int(r)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   313
%  }
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   314
% \end{lstlisting}
67
ca5884c2e3bd updated
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
   315
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   316
% \end{frame}
67
ca5884c2e3bd updated
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
   317
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
ca5884c2e3bd updated
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
   318
ca5884c2e3bd updated
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
   319
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   320
\begin{frame}[c,fragile]
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   321
\frametitle{Last Week: Pattern Matching} 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   322
\small
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   323
  
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   324
\begin{lstlisting}[language=Scala, numbers=none, xleftmargin=3mm]
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   325
def fizz_buzz(n: Int) : String = 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   326
  (n % 3, n % 5) match {
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   327
    case (0, 0) => "fizz buzz"
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   328
    case (0, _) => "fizz"
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   329
    case (_, 0) => "buzz"
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   330
    case _ => n.toString  
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   331
  }
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   332
\end{lstlisting}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   333
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   334
\end{frame}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   335
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   336
446
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   337
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   338
\begin{frame}[c,fragile]
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   339
\frametitle{Last Week: Pattern Matching} 
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   340
\small
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   341
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   342
\begin{lstlisting}[language=Scala, numbers=none, xleftmargin=3mm]
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   343
def mkeps(r: Rexp) : Val = r match {
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   344
  case ONE => Empty
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   345
  case ALT(r1, r2) => ...
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   346
  case SEQ(r1, r2) => ...
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   347
  case STAR(r) => ...
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   348
  case RECD(x, r1) => Rec(x, mkeps(r))
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   349
  ...
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   350
}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   351
\end{lstlisting}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   352
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   353
\end{frame}
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   354
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   355
30b8f14b2655 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 415
diff changeset
   356
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   357
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   358
\begin{frame}[c,fragile]
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   359
\frametitle{Reverse Polish Notation}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   360
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   361
{\Large\bl{$(3 + 1) * (2 + 9)$}}\bigskip
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   362
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   363
{\Large$\Rightarrow$}\bigskip
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   364
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   365
{\;\;\Large\bl{$3\;\;1\;+\;2\;\;9\;+\;*$}}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   366
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   367
\begin{textblock}{3}(11,4)
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   368
\begin{onlyenv}<2>
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   369
\begin{lstlisting}[language=JVMIS]
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   370
ldc 3
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   371
ldc 1
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   372
iadd
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   373
ldc 2
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   374
ldc 9
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   375
iadd
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   376
imul
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   377
\end{lstlisting}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   378
\end{onlyenv} 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   379
\end{textblock}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   380
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   381
\end{frame}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   382
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   383
 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   384
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   385
% \begin{frame}[c,fragile]
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   386
% \frametitle{Sudoku}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   387
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   388
% A very simple-minded version on 110 problems:\bigskip
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   389
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   390
% \begin{itemize}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   391
% \item 1 core: 800 secs
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   392
% \item 2 cores: 400 secs
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   393
% \item 8 cores: 290 secs
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   394
% \item 18 cores: 142 secs
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   395
% \end{itemize}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   396
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   397
% \end{frame}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   398
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   399
 
155
eccf17f56922 updated
Christian Urban <urbanc@in.tum.de>
parents: 140
diff changeset
   400
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   401
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   402
% \begin{frame}[t]
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   403
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   404
%   \begin{center}  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   405
%   \includegraphics[scale=0.3]{../pics/blow.png}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   406
%   \end{center}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   407
  
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   408
%   \begin{textblock}{14}(2,11.4)
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   409
%   \large\bf{}Mind-Blowing Regular Expressions:\\ 
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   410
%   \centering in Python, JavaScript, Java
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   411
%   \end{textblock}
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   412
% \end{frame}
67
ca5884c2e3bd updated
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
   413
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   414
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   415
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   416
\begin{frame}[c,fragile]
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   417
\frametitle{Regular Expressions} 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   418
  
326
7d983ee99fcc updated
Christian Urban <urbanc@in.tum.de>
parents: 325
diff changeset
   419
Suppose you have the regular expression 
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   420
\only<1-3>{\alert{\texttt{(a*)b}}}%
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   421
\only<4->{\alert{\texttt{(a*)*b}}} :\bigskip
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   422
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   423
\begin{center}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   424
\only<1>{\code{"aaaaaaaaaaaaaaab"}}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   425
\only<2>{\code{"aaaaa...........aaaaaaaaaaaaaaaaaaaab"}}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   426
\only<3>{\code{"aaaaa...........aaaaaaaaaaaaaaaaaaaa"}}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   427
\only<4>{\code{"aaaaa...........aaaaaaaaaaaaaaaaaaaab"}}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   428
\only<5->{\code{"aaaaa...........aaaaaaaaaaaaaaaaaaaa"}}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   429
\end{center}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   430
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   431
\only<6>{
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   432
\begin{textblock}{13}(5,12)
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   433
How long does Python need to find out?
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   434
\end{textblock}}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   435
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   436
\end{frame}
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   437
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   438
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   439
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   440
\begin{frame}<1>[c]
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   441
  \frametitle{Main 3: Regexes}
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   442
  
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   443
\begin{center}
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   444
  \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: 413
diff changeset
   445
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   446
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   447
  \small  
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   448
\begin{tabular}[t]{@{\hspace{-8mm}}c@{\hspace{-0mm}}c@{}}
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   449
\only<1>{\raisebox{6mm}{\begin{tikzpicture}
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   450
\begin{axis}[
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   451
    xlabel={$n$},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   452
    x label style={at={(1.05,0.0)}},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   453
    ylabel={time in secs},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   454
    enlargelimits=false,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   455
    xtick={0,5,...,30},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   456
    xmax=33,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   457
    ymax=35,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   458
    ytick={0,5,...,30},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   459
    scaled ticks=false,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   460
    axis lines=left,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   461
    width=5.5cm,
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   462
    height=5cm,
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   463
    legend entries={Java 8,Python,JavaScript,Swift,Dart},
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   464
    %legend entries={\small{}Python,  \small{}Java 8,  \small{}JavaScript},  
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   465
    legend pos=north west,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   466
    legend cell align=left]
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   467
\addplot[blue,mark=*, mark options={fill=white}] table {re-python2.data};  
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   468
\addplot[cyan,mark=*, mark options={fill=white}] table {re-java.data};
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   469
\addplot[red,mark=*, mark options={fill=white}] table {re-js.data};
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   470
\addplot[magenta,mark=*, mark options={fill=white}] table {re-swift.data};
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   471
\addplot[brown,mark=*, mark options={fill=white}] table {re-dart.data};
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   472
\end{axis}
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   473
\end{tikzpicture}}}%
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   474
\only<2>{\raisebox{0mm}{\begin{tikzpicture}
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   475
\begin{axis}[
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   476
    xlabel={$n$},
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   477
    x label style={at={(1.05,0.0)}},
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   478
    ylabel={time in secs},
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   479
    %y label style={at={(0.06,0.5)}},
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   480
    enlargelimits=false,
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   481
    %xtick={0,30000,...,60000},
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   482
    xmax=65000,
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   483
    ymax=35,
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   484
    ytick={0,5,...,30},
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   485
    scaled ticks=true,
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   486
    axis lines=left,
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   487
    width=5.5cm,
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   488
    height=5cm, 
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   489
    legend entries={\small{}Java 9},  
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   490
    legend pos=north west]
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   491
\addplot[cyan,mark=*, mark options={fill=white}] table {re-java9.data};
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   492
\end{axis}
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   493
\end{tikzpicture}}}
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   494
  &
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   495
\onslide<1-2>{\begin{tikzpicture}
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   496
  \begin{axis}[
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   497
    xlabel={$n$},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   498
    x label style={at={(1.05,0.0)}},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   499
    ylabel={time in secs},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   500
    enlargelimits=false,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   501
    ymax=35,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   502
    ytick={0,5,...,30},
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   503
    axis lines=left,
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   504
    legend entries={You in M3}, 
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   505
    %%scaled ticks=false,
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   506
    width=5.5cm, 
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   507
    height=5cm]
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   508
%%\addplot[green,mark=square*,mark options={fill=white}] table {re2a.data};    
222
ec9cbf969edf updated
Christian Urban <urbanc@in.tum.de>
parents: 217
diff changeset
   509
\addplot[magenta,mark=square*,mark options={fill=white}] table {re3a.data};
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   510
\end{axis}
70
6024381415cb updated
Christian Urban <urbanc@in.tum.de>
parents: 68
diff changeset
   511
\end{tikzpicture}}
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   512
\end{tabular}
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   513
\end{center}
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   514
68
8da9e0c16194 updated
Christian Urban <urbanc@in.tum.de>
parents: 67
diff changeset
   515
\hfill\small\url{https://vimeo.com/112065252}
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   516
\end{frame}
325
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   517
26058bf089ae updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
   518
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
67
ca5884c2e3bd updated
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
   519
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   520
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
491
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   521
%\begin{frame}[c,fragile]
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   522
%\small
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   523
%\textcolor{red}{MacOSX}\medskip
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   524
%
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   525
%\begin{minipage}{13cm}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   526
%  \begin{itemize}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   527
%  \item[0)] (if needed) \texttt{brew install java} \;\;or\;\; \texttt{brew reinstall java}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   528
%  \item[1)] \texttt{curl -s "https://get.sdkman.io" | bash}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   529
%  \item[2)] \texttt{sdk install scala 2.13.7}  
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   530
%  \end{itemize}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   531
%\end{minipage}\bigskip
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   532
  
491
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   533
%\textcolor{red}{Windows / Linux Ubuntu}\medskip
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   534
491
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   535
%\begin{minipage}{13cm}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   536
%  \begin{itemize}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   537
%  \item[0)] (if needed) \texttt{sudo apt-get remove scala-library scala}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   538
%  \item[1)] {\fontsize{8.5}{8.5}\selectfont\texttt{sudo wget https://downloads.lightbend.com/scala/2.13.7/scala-2.13.7.deb}}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   539
%  \item[2)] \texttt{sudo dpkg -i scala-2.13.7.deb}  
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   540
%  \end{itemize}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   541
%\end{minipage}\bigskip
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   542
491
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   543
%\begin{minipage}{13cm}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   544
%other Linux distros: \texttt{sudo apt-get scala}
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   545
%\end{minipage}
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   546
491
2a30c7dfe3ed updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 478
diff changeset
   547
%\end{frame}
415
368556c8df56 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 413
diff changeset
   548
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   549
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   550
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   551
\end{document}
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   552
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   553
%%% Local Variables:  
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   554
%%% mode: latex
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   555
%%% TeX-master: t
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   556
%%% End: 
3506b681c191 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   557