moved intro to abstract, added refs, test listing
authorMart Lubbers <mart@martlubbers.net>
Tue, 28 Feb 2017 13:49:29 +0000 (14:49 +0100)
committerMart Lubbers <mart@martlubbers.net>
Tue, 28 Feb 2017 13:49:29 +0000 (14:49 +0100)
.gitignore
Makefile
abstract.tex
acknowledgements.tex [new file with mode: 0644]
introduction.tex
theoretical-framework.tex
thesis.bib
thesis.pre
thesis.tex

index af8036b..8df797c 100644 (file)
@@ -9,7 +9,10 @@
 *.glo
 *.gls
 *.ist
+*.lof
 *.log
+*.lol
+*.lot
 *.out
 *.pdf
 *.tdo
index 32587bc..04e20c5 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -26,5 +26,5 @@ all: $(addsuffix .pdf,$(DOCS))
 
 clean:
        $(RM) $(foreach DOC,$(DOCS),$(addprefix $(DOC).,\
-               acn acr alg aux bbl blg fmt glg glo gls ist log nav out pdf run.xml\
-               snm tdo toc vrb xdy))
+               acn acr alg aux bbl blg fmt glg glo gls ist lof log lol lot nav out\
+               pdf run.xml snm tdo toc vrb xdy))
index f6276be..1272fab 100644 (file)
@@ -1 +1,7 @@
-\lipsum[1]
+This thesis presents a way to connect small \gls{IoT} devices with high level
+\gls{TOP} implementations languages. It shows how a new frontend for the class
+based shallowly embedded \glspl{DSL} called \gls{mTask} written in \gls{Clean}
+can be used to compile \gls{IoT}-tasks on the fly and send them to the device
+as bytecode which is interpreted. All of this adheres to the \gls{TOP}
+philosophy where familiar concepts such as \glspl{SDS} and task-combinators are
+available at ease.
diff --git a/acknowledgements.tex b/acknowledgements.tex
new file mode 100644 (file)
index 0000000..a8e7ea5
--- /dev/null
@@ -0,0 +1 @@
+My thanks and gratitude goes to\ldots
index a413b2f..1b184ee 100644 (file)
@@ -1,21 +1,27 @@
-The main goal of this thesis is to present a way to connect small \gls{IoT}
-devices with high level \gls{TOP} implementations languages. This thesis shows
-how a new frontend for the class based shallowly embedded \glspl{DSL} called
-\gls{mTask} written in \gls{Clean} can be used to compile \gls{IoT}-tasks on
-the fly and send them to the device as bytecode which is interpreted. All of
-this adheres to the \gls{TOP} philosophy where familiar concepts such as
-\glspl{SDS} and task-combinators are available to use.
-
-
 \section{Motivation}
-\todo{Show relevance of the research}
+\Gls{TOP} and \gls{iTasks} have been designed to offer a high abstraction level
+through a \gls{DSL} that describes workflows as \glspl{Task}. \gls{iTasks} has
+been shown to be useful in fields such as incident
+management~\cite{lijnse_top_2013}. However, there still lacks support for small
+devices to be added in the workflow. In principle such adapters can be written
+as \glspl{SDS}\footnote{Similar as to resources such as time are available in
+the current system} but this requires a very specific adapter to be written for
+every device and functionality. Oortgiese et al.\ lifted \gls{iTasks} from a
+single server model to a distributed server architecture~\todo{Add cite} that
+is also runnable on smaller devices like \acrshort{ARM}. However, this is
+limited to fairly high performance devices that are equipped with high speed
+communication lines.  Devices in \gls{IoT} often only have LPLB communication
+with low bandwidth and a very limited amount of processing power. \glspl{mTask}
+will bridge this gap.  It can run on devices as small as Arduino
+microcontrollers and operates via the same paradigms as regular \glspl{Task}.
+The \glspl{mTask} have access to \glspl{SDS} and can run small imperative
+programs.
 
-\section{Research questions}
-\todo{Formulate research question}
+\section{Problem statement}
 
 \section{Document structure}
 The structure of the thesis is as follows.
-Chapter~\ref{chp:introduction} contains the research questions, motivation and
+Chapter~\ref{chp:introduction} contains the problem statement, motivation and
 the structure of the document
 Chapter~\ref{chp:theoretical-framework} introduces the reader with all the
 terminology and techniques lying at the foundation of the study.
index 4551ed3..59975f1 100644 (file)
@@ -1,7 +1,7 @@
 \section{\acrlong{TOP}}
 
 
-\begin{lstlisting}[language=Clean]
+\begin{lstlisting}[language=Clean,label={lst:test},caption={Caption}]
 module Life
 
 Start :: *World -> *World
index 3b6d9d0..dfbd233 100644 (file)
        pages = {364--384},
        file = {Clean &#x2014\; A language for functional graph rewriting - chp%3A10.1007%2F3-540-18317-5_20.pdf:/home/mrl/.mozilla/firefox/7b4r727h.default-1470981082057/zotero/storage/GCEPPRUJ/chp%3A10.1007%2F3-540-18317-5_20.pdf:application/pdf}
 }
+
+@article{da_xu_internet_2014,
+       title = {Internet of things in industries: a survey},
+       volume = {10},
+       number = {4},
+       journal = {Industrial Informatics, IEEE Transactions on},
+       author = {Da Xu, Li and He, Wu and Li, Shancang},
+       year = {2014},
+       pages = {2233--2243},
+       file = {IOT industrial survey.pdf:/home/mrl/.mozilla/firefox/7b4r727h.default-1470981082057/zotero/storage/EJHG7M8I/IOT industrial survey.pdf:application/pdf}
+}
+
+@book{lijnse_top_2013,
+       address = {S.l.; Nijmegen},
+       title = {{TOP} to the rescue: task-oriented programming for incident response applications},
+       isbn = {978-90-820259-0-3},
+       shorttitle = {{TOP} to the rescue},
+       language = {English},
+       publisher = {s.n.] ; UB Nijmegen [host},
+       author = {Lijnse, Bas},
+       year = {2013},
+       note = {OCLC: 833851220},
+       file = {103931.pdf:/home/mrl/.mozilla/firefox/7b4r727h.default-1470981082057/zotero/storage/9KZ9I6N9/103931.pdf:application/pdf}
+}
\ No newline at end of file
index 21bddc2..e41516c 100644 (file)
@@ -11,7 +11,7 @@
 \usepackage{caption}                 % Captions
 \usepackage{subcaption}              % Subcaptions
 \usepackage{lipsum}                  % dummy text
-\usepackage{clean}                  % dummy text
+\usepackage{listings}                % source code
 
 \urlstyle{same}
 \hypersetup{%
        hidelinks=true
 }
 
+\lstdefinelanguage{Clean}{%
+       alsoletter={ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_`1234567890},
+       alsoletter={~!@\#$\%^\&*-+=?<>:|\\.},
+       morekeywords={generic,implementation,definition,dynamic,module,import,from,where,in,of,case,let,infix,infixr,infixl,class,instance,with,if,derive},
+       sensitive=true,
+       morecomment=[l]{//},
+       morecomment=[n]{/*}{*/},
+       morestring=[b]",
+       morestring=[b]',
+       emptylines=1,
+       basewidth=0.45em,
+       columns=[c]fixed,
+       texcl=true,
+       literate=%
+               % Basic Clean constructs
+               {\\}{{$\lambda\:$}}1
+               {A.}{{$\forall\;\,$}}1
+               {E.}{{$\exists\;\,$}}1
+               {>}{{$>$}}1
+               {<}{{$<$}}1
+               {<=}{{$\leq$}}1
+               {>=}{{$\geq$}}1
+               {<>}{{$\neq$}}1
+               {->}{{$\rightarrow$}}2
+               {<-}{{$\leftarrow$}}1
+               {=}{{$=$}}1
+               {~}{{$\sim$}}1
+               {\#}{{$\sharp$}}1
+               {\{|}{{$\{\!|\!$}}1
+               {|\}}{{$\!|\!\}$}}1
+               {:=}{{$:=$}}2
+               {==}{{$==$}}2
+               {++}{{$+\!\!+$}}2
+               {+++}{{$+\!\!\!\!+\!\!\!\!+$}}2
+               {:==}{{$:==$}}3
+               {\{|*|\}}{{$\{\!|\!\!\star\!\!|\!\}$}}3
+               %
+               % Basic iTask constructs
+               {>||>}{{$\triangleright\triangleright$}}2
+               {>>=}{{\texttt{>>=}}}3
+               {>>|}{{\texttt{>>|}}}3
+               {?>>}{{\texttt{?>>}}}3
+               {!>>}{{\texttt{!>>}}}3
+               {-||-}{{\texttt{-||-}}}4
+               {.||.}{{\texttt{.||.}}}4
+               {.&&.}{{\texttt{.\&\&.}}}4
+}
+
+\lstset{%
+       breakatwhitespace=false,         % sets if automatic breaks should only happen at whitespace
+       breaklines=true,                 % sets automatic line breaking
+       captionpos=b,                    % sets the caption-position to bottom
+       keepspaces=true,                 % keeps spaces in text, useful for keeping indentation of code (possibly needs columns=flexible)
+       basicstyle=\footnotesize,        % the size of the fonts that are used for the code
+       commentstyle=\itshape,           % comment style
+       keywordstyle=\bfseries,          % keyword style
+       stringstyle=\ttfamily,           % string literal style
+       language=Clean,                  % the language of the code
+       showspaces=false,                % show spaces everywhere adding particular underscores; it overrides 'showstringspaces'
+       showstringspaces=false,          % underline spaces within strings only
+       showtabs=false,                  % show tabs within strings adding particular underscores
+       tabsize=4                            % sets default tabsize to 2 spaces
+}
+
 \title{iTasks and the Internet of Things}
 \author{Mart Lubbers BSc.\\
        {\small\href{mailto:mart@martlubbers.net}{mart@martlubbers.net}}}
index 4390086..904c7e7 100644 (file)
@@ -6,14 +6,18 @@
 \newacronym{IoT}{IoT}{Internet of Things}
 \newacronym{TOP}{TOP}{Task Oriented Programming}
 \newacronym{DSL}{DSL}{Design Specific Language}
+\newacronym{RISC}{RISC}{Reduced Instruction Set Computer}
+\newacronym{ARM}{ARM}{Acorn \acrshort{RISC} Machine}
 \newglossaryentry{Clean}{name=Clean,
        description={is a pure lazy functional programming language based on graph
                rewriting}}
 \newglossaryentry{iTasks}{name=iTasks,
        description={is a \acrshort{TOP} implementation written as a \acrshort{DSL}
        in the \gls{Clean} programming language}}
+\newglossaryentry{Task}{name=Task,
+       description={is the basic building block of a \acrshort{TOP} system}}
 \newglossaryentry{mTask}{name=mTask,
-       description={is an abstraction for tasks living on \acrshort{IoT} devices}}
+       description={is an abstraction for \glspl{Task} living on \acrshort{IoT} devices}}
 
 \begin{document}
 \frontmatter{}
 %Abstract
 \chapter*{\centering Abstract}
 \begin{quotation}
-       \centering\it\noindent
+       \centering\noindent
        \input{abstract.tex}
 \end{quotation}
 
+\chapter*{\centering Acknowledgements}
+\begin{quotation}
+       \centering\it\noindent
+       \input{acknowledgements.tex}
+\end{quotation}
+
 %Table of contents
 \tableofcontents
 
 \chapter{Communication protocol}\label{app:communication-protocol}
 \input{appendix-protocol.tex}
 
+\lstlistoflistings{}
+\listoffigures{}
+\listoftables{}
+
 \bibliographystyle{ieeetr}
 \bibliography{thesis}
 \end{document}