add taskvalue graph and split up methods
[msc-thesis1617.git] / methods.tex
index 1cf3b68..7850c82 100644 (file)
@@ -1,56 +1,6 @@
-\section{\acrlong{TOP}}
-\subsection{\gls{iTasks}}
-\gls{TOP} is a recent new programming paradigm implemented as
-\gls{iTasks}\cite{achten_introduction_2015} in the pure lazy functional
-language \gls{Clean}\cite{brus_cleanlanguage_1987}. \gls{iTasks} is a
-\gls{EDSL} to model workflow tasks in the broadest sense. A \CI{Task} is just
-a function that, given some state, returns the observable value of the
-\CI{TaskValue}. A simple example is shown in Listing~\ref{lst:taskex}
-accompanied with Figure~\ref{fig:taskex1},~\ref{fig:taskex2} and~%
-\ref{fig:taskex3}.
-
-\begin{lstlisting}[language=Clean,label={lst:taskex},%
-       caption={An example \gls{Task} for entering a name}]
-:: Name         = { firstname :: String
-                  , lastname  :: String
-                                 }
-
-derive class iTask Name
-
-enterInformation :: String [EnterOption m] -> (Task m) | iTask m
-
-enterName :: Task Name
-enterName = enterInformation "Enter your name" []
-\end{lstlisting}
+\input{methods.top.tex}
 
-\begin{figure}[H]
-       \begin{subfigure}{.25\textwidth}
-               \centering
-               \includegraphics[width=.9\linewidth]{taskex1}
-               \caption{Initial interface}\label{fig:taskex1}
-       \end{subfigure}
-       \begin{subfigure}{.25\textwidth}
-               \centering
-               \includegraphics[width=.9\linewidth]{taskex2}
-               \caption{Incomplete entrance}\label{fig:taskex2}
-       \end{subfigure}
-       \begin{subfigure}{.25\textwidth}
-               \centering
-               \includegraphics[width=.9\linewidth]{taskex3}
-               \caption{Complete entry}\label{fig:taskex3}
-       \end{subfigure}
-       \caption{Example of a generated user interface}
-\end{figure}
-
-\subsection{Combinators}
-
-\section{\acrlong{EDSL}s}
-\todo{while iTasks is also a DSL\ldots}
-\glspl{mTask} are expressed in a class based shallowly embedded \gls{EDSL}.
-There are two main types of \glspl{EDSL}.
-\todo{Small shallow embedded dsl intro}
-\todo{Small deep embedded dsl}
-\todo{Show that class based has the best of both worlds}
+\input{methods.dsl.tex}
 
 \section{Architecture}
 \subsection{Devices}