The edge layer of \gls{IOT} systems predominantly consists of microcontrollers.
Microcontrollers are tiny computers designed specifically for embedded applications.
-They differ significantly from regular computers in many aspects.
+They differ significantly from regular computers in many aspects, and as a consequence, development for microcontrollers differs also.
For example, they are much smaller; only have a fraction of the memory and processor speed; and run on different architectures.
Furthermore, they have much more energy-efficient sleep modes, and support connecting and interfacing with peripherals such as sensors and actuators.
To illustrate the difference in characteristics, \cref{tbl:mcu_laptop} compares the hardware properties of a typical laptop with two popular microcontrollers.
% VimTeX: SynIgnore off
\section{Conclusion and reading guide}
+This chapter introduced traditional edge device programming and programming edge devices using \gls{MTASK}.
The edge layer of \gls{IOT} systems is powered by microcontrollers.
Microcontrollers have significantly different characteristics to regular computers.
Programming them happens through compiled firmwares using low-level imperative programming languages.
\end{itemize}
\end{chapterabstract}
-The edge layer of the \gls{IOT} contains small devices that sense and interact with the world.
+The edge layer of the \gls{IOT} is built from energy-efficient devices that sense and interact with the world.
While individual devices consume little energy, the sheer number of devices in total amounts to a lot.
-Furthermore, many \gls{IOT} devices operate on batteries and higher energy consumption increases the amount of e-waste as \gls{IOT} edge devices are often hard to reach and consequently hard to replace \citep{nizetic_internet_2020}.
+Furthermore, many of these devices operate on batteries and higher energy consumption increases the amount of e-waste as \gls{IOT} edge devices are often hard to reach and consequently hard to replace \citep{nizetic_internet_2020}.
It is therefore crucial to lower their energy consumption.
To reduce the power consumption of an \gls{IOT} edge device, the specialised low-power sleep modes of the microprocessors can be leveraged.
\end{lstArduino}
\section{Conclusion}
+This chapter showed the implementation of the \gls{MTASK} byte code compiler, the \gls{RTS}, and the internals of their communication.
It is not straightforward to execute \gls{MTASK} tasks on resources-constrained \gls{IOT} edge devices.
To achieve this, the terms in the \gls{DSL} are compiled to compact domain-specific byte code.
This byte code is sent for interpretation to the light-weight \gls{RTS} of the edge device.
\end{lstClean}
\section{Conclusion}
-When \gls{IOT} edge devices run the \gls{MTASK} \gls{RTS}, they become little \gls{TOP} engines of their own.
+This chapter explained the integration of \gls{MTASK} programs with \gls{ITASK}.
Using just three \gls{ITASK} functions, \gls{MTASK} devices are integrated in \gls{ITASK} seamlessly.
Devices, using any supported type of connection, are integrated in \gls{ITASK} using the \cleaninline{withDevice} function.
Once connected, \gls{MTASK} tasks are sent to the device for execution using \cleaninline{liftmTask}, lifting them to full-fledged \gls{ITASK} tasks.
\vspace*{\fill}
\hfill
\begin{center}
- \cleaninline[basewidth=.2em,columns=flexible,basicstyle=\tt\footnotesize]{let p = [['This page would be intentionally blank if I were not telling you that ']:p] in p} % chktex 10
+ \cleaninline[basewidth=0pt,columns=flexible,basicstyle=\tt\footnotesize]{let p = [['This page would be intentionally blank if I were not telling you that ']:p] in p} % chktex 10
\end{center}
\vspace{\fill}
\newpage
As the language is a \gls{TOP} language, it is also enriched with a task language (see \cref{sec:top}).
\section{Conclusion}
+This chapter gave an overview of the complete \gls{MTASK} \gls{DSL}.
The \gls{MTASK} language is a rich \gls{TOP} language tailored for \gls{IOT} edge devices.
The language is implemented as a class-based shallowly \gls{EDSL} in the pure functional host language \gls{CLEAN}.
The language is an enriched lambda calculus as a host language.
\input{subfilepreamble}
-%\let\ifSubfilesClassLoadedOld\ifSubfilesClassLoaded%
-%\ifSubfilesClassLoadedOld{
-% \renewcommand{\ifSubfilesClassLoaded}[2]{#2}
-%}{}
+\let\ifSubfilesClassLoadedOld\ifSubfilesClassLoaded%
+\ifSubfilesClassLoadedOld{
+ \renewcommand{\ifSubfilesClassLoaded}[2]{#2}
+}{}
\begin{document}
\input{subfileprefix}
\part[Orchestrating the Internet of Things using Task-O\-rien\-ted Programming]{\\[2ex]\smaller{}Orchestrating the Internet of Things using Task-O\-rien\-ted Programming}%
\subfile{green} % Green computing
\subfile{finale} % Conclusion
-%\let\ifSubfilesClassLoaded\ifSubfilesClassLoadedOld%
+\let\ifSubfilesClassLoaded\ifSubfilesClassLoadedOld%
\input{subfilepostamble}
\end{document}