embedding examples
[msc-thesis1617.git] / pres.system.tex
1 \subsection{Overview}
2 \begin{frame}
3 \frametitle{Solution}
4 \begin{itemize}[<+->]
5 \item New backend for mTask
6 \item Bytecode generation
7 \item Interpreter on client
8 \item Server in iTasks
9 \item Integration with iTasks
10 \item No taskserver
11 \end{itemize}
12 \end{frame}
13
14 \subsection{Extending mTask}
15 \begin{frame}[fragile]
16 \frametitle{Adding a View}
17 \begin{lstlisting}
18 :: ByteCode a p = BC (RWS () [BC] BCState ())
19 :: BCValue = E.e: BCValue e & mTaskType, TC e
20 :: BCShare = { sdsi :: Int, sdsval :: BCValue, sdsname :: String }
21 :: BCState = { freshl :: Int, freshs :: Int, sdss :: [BCShare] }
22
23 instance ByteCode arith, boolExpr, ...
24 \end{lstlisting}
25 \end{frame}
26
27 \begin{frame}[fragile]
28 \frametitle{Functionality}
29 \begin{block}{SDS scope and naming}
30 \begin{itemize}
31 \item SDS is lost
32 \item State per device
33 \item Tasks are sent and gone
34 \end{itemize}
35 \pause{}
36 \begin{lstlisting}
37 class namedsds v where
38 namedsds :: ((v t Upd) -> In (Named t String) (Main (v c s)))
39 -> (Main (v c s)) | ...
40 :: Named a b = Named infix 1 a b
41 \end{lstlisting}
42 \end{block}
43 \end{frame}
44
45 \begin{frame}[fragile]
46 \frametitle{Task scheduling}
47 \begin{block}{Old}
48 \begin{itemize}
49 \item Task server
50 \item Tasks start other tasks
51 \end{itemize}
52 \end{block}
53 \pause{}
54 \begin{block}{New}
55 \begin{itemize}
56 \item Old system, taskserver, tasks start tasks
57 \item New system, task+strategy
58 \pause{}
59 \begin{itemize}
60 \item \CI{OnShot}
61 \item \CI{OnInterval}
62 \item \CI{OnInterrupt}
63 \end{itemize}
64 \pause{}
65 \item How to handle termination
66 \end{itemize}
67 \pause{}
68 \begin{lstlisting}
69 class retrn v where
70 retrn :: v () Expr
71 \end{lstlisting}
72 \end{block}
73 \end{frame}
74
75 \subsection{Devices}
76 \subsection{Server}
77 \subsection{Examples}