\begin{frame}
\frametitle{Current state of mTask}
\begin{itemize}
+ \item Suits our needs as an EDSL
\item It all seems perfect
\item \ldots\pause{} but\ldots
\pause{}
\begin{frame}
\frametitle{Solution}
\begin{itemize}[<+->]
+ \item Reuse mTask
\item New bytecode backend for mTask
\item Interpreter on client
\item Server in iTasks with integration
\item No taskserver generation, onetime programming
\item Dynamic task sending
- \item Explicit SDS publishing
\end{itemize}
\end{frame}
\end{lstlisting}
\end{frame}
-%\begin{frame}[fragile]
-% \frametitle{Functionality}
-% \begin{block}{SDS scope and naming}
-% \begin{itemize}
-% \item SDS is lost
-% \item State per device
-% \item Tasks are sent and gone
-% \end{itemize}
-% \pause{}
-% \begin{lstlisting}
-%class namedsds v where
-% namedsds :: ((v t Upd) -> In (Named t String) (Main (v c s)))
-% -> (Main (v c s)) | ...
-%:: Named a b = Named infix 1 a b
-%
-%instance sdspub ByteCode where
-% pub (BC x) = BC (censor (\[BCSdsFetch s]->[BCSdsPublish s]) x)
-% \end{lstlisting}
-% \end{block}
-%\end{frame}
-
\begin{frame}[fragile]
- \frametitle{Assignment}
+ \frametitle{Assignment and SDSs}
\begin{lstlisting}[language=Clean]
instance sds ByteCode where
sds f = {main = BC (freshshare
\end{lstlisting}
\end{frame}
+\begin{frame}[fragile]
+ \frametitle{Bandwidth is scarce}
+ Publish SDS explicitly
+ \pause{}
+ \begin{lstlisting}
+class sdspub v where
+ pub :: (v t Upd) -> (v () Stmt)
+instance sdspub ByteCode where
+ pub (BC x) = BC (censor (\[BCSdsFetch s]->[BCSdsPublish s]) x)
+ \end{lstlisting}
+\end{frame}
+
\begin{frame}[fragile]
\frametitle{Task scheduling}
\begin{block}{Old}