+\begin{lstClean}[numbers=left,caption={The \gls{UI} and code for entering a person in \gls{ITASK}.},label={lst:enter_person}]
+:: Person = { name :: String, gender :: Gender, dateOfBirth :: Date }[+\label{lst:dt_fro}+]
+:: Gender = Male | Female | Other String[+\label{lst:dt_to}+]
+
+derive class iTask Person, Gender[+\label{lst:dt_derive}+]
+
+enterPerson :: Task Person
+enterPerson
+ = Hint "Enter a person:" @>> enterInformation [][+\label{lst:task_ui}+]
+ >>! \result->Hint "You Entered:" @>> viewInformation [] result[+\label{lst:task_comb}+]
+\end{lstClean}
+
+\subsection{\texorpdfstring{\Gls{MTASK}}{MTask}}
+This thesis uses \gls{ITASK} in conjunction with an innovative \gls{TOP} language designed for defining interactive systems for \gls{IOT} edge devices called \gls{MTASK} \citep{koopman_task-based_2018}.
+It is written in \gls{CLEAN} as a multi-view \gls{EDSL} and hence there are multiple interpretations of the language of which the byte code compiler is the most relevant for this thesis.
+From the terms in the \gls{TOP} language, a very compact binary representation of the work that needs to be done is compiled.
+This specification is then sent to a device that runs the \gls{MTASK} \gls{RTS}, a domain-specific \gls{TOP} engine implemented as a feather-light domain-specific \gls{OS}.
+\Gls{MTASK} is seamlessly integrated with \gls{ITASK}, it allows the programmer to define all layers of an \gls{IOT} system from a single declarative specification.
+
+\todo[inline]{Is this example useful? Add more detailed explanation with line numbers?}
+\Cref{lst:intro_blink} shows an \gls{MTASK}\slash{}\gls{ITASK} application for an interactive application where the \gls{LED} on the microcontroller blinks every user-specified interval.
+Using a \glspl{SDS} defined in \gls{ITASK}, the blinking frequency of an \gls{LED} connected to \gls{GPIO} pin 13 can be changed on the fly.
+
+\begin{lstClean}[numbers=left,caption={\Gls{MTASK}\slash{}\gls{ITASK} interactive blinking.},label={lst:intro_blink}]
+interactiveBlink :: Task Int
+interactiveBlink =
+ withShared 500 \iInterval->
+ withDevice {TCPSettings | host = ..., port = ...} \dev->
+ liftmTask (intBlink iInterval) dev
+ -|| Hint "Interval (ms)" @>> updateSharedInformation [] iInterval
+
+intBlink :: Shared sds Int -> MTask v Int | mtask, liftsds v & RWShared sds
+intBlink iInterval =
+ declarePin D13 PMOutput \d13->
+ liftsds \mInterval=iInterval
+ In fun \blink=(\st->
+ writeD d13 st
+ >>|. getSds mInterval
+ >>=. \i->delay i
+ >>|. blink (Not st))
+ In {main = blink true}
+\end{lstClean}
+
+\subsection{Other \texorpdfstring{\glsxtrshort{TOP}}{TOP} languages}
+While \gls{ITASK} conceived \gls{TOP}, it is not the only \gls{TOP} language and engine.
+Some \gls{TOP} languages and systems arose from Master's and Bachelor's thesis projects (e.g.\ \textmu{}Task \citep{piers_task-oriented_2016} and LTasks \citep{van_gemert_task_2022}) or were created to solve a practical problem (e.g.\ Toppyt \citep{lijnse_toppyt_2022} and hTask \citep{lubbers_htask_2022}).
+Furthermore, \gls{TOPHAT} is a fully formally specified \gls{TOP} language designed to capture the essence of \gls{TOP} formally \citep{steenvoorden_tophat_2019}.
+It is also possible to translate \gls{TOPHAT} code to \gls{ITASK} to piggyback on the \gls{TOP} engine it offers \citep[\citesection{G.3}]{steenvoorden_tophat_2022}.
+
+\section{Contributions}\label{sec:contributions}
+This section provides a thorough overview of the relation to publications and the scientific contributions of the episodes and chapters.
+
+\subsection{\Fullref{prt:dsl}}
+The \gls{MTASK} system is a heterogeneous \gls{EDSL} and during the development of it, several novel basal techniques for embedding \glspl{DSL} in \gls{FP} languages have been found.
+This episode is a paper based episodes on these techniques.
+
+\Cref{chp:classy_deep_embedding} is based on the paper \emph{Deep Embedding with Class} \citep{lubbers_deep_2022}.