many updates
[phd-thesis.git] / thesis.tex
1 \documentclass[twoside,10pt]{book}
2
3 \def\mytitle{Orchestrating the Internet of Things\texorpdfstring{\\}{ }with Task-Oriented Programming}
4 \def\mysubtitle{a purely functional rhapsody}
5 \def\myauthor{Mart Lubbers}
6 \def\mydate{\formatdate{1}{2}{2023}}
7
8 \input{preamble}
9
10 % To show hboxes even when in non-draft mode
11 \setlength{\overfullrule}{20pt}
12
13 % Just for the todonotes, can go when it's finished
14 \usepackage{todonotes}
15 \setuptodonotes{
16 backgroundcolor=white,
17 linecolor=black,
18 % size=tiny,
19 }
20
21 % Document info
22 \title{\mytitle\texorpdfstring{\\[2ex]}{---}\smaller\mysubtitle}
23 \author{Mart Lubbers}
24 \date{\mydate}
25
26 \begin{document}
27 \begingroup
28 \makeatletter
29 \let\@bibitem\saved@bibitem%
30 \endgroup
31
32 \selectlanguage{british}
33
34 \frontmatter%
35 \frontmatterfancy%
36
37 %Titlepage
38 \hypertarget{titlepage}{}
39 \bookmark[level=section,dest=titlepage]{Titlepage}
40 \subfile{front/titlepage}
41 \newpage%
42
43 % Epigraph/motto
44 \hypertarget{motto}{}
45 \bookmark[level=section,dest=motto]{Motto}
46 \subfile{front/motto}
47
48 % Table of contents
49 \setcounter{tocdepth}{1}
50 \hypertarget{contents}{}
51 \bookmark[level=section,dest=contents]{Contents}
52 \tableofcontents
53 \newpage%
54
55 % Dedication
56 \hypertarget{dedication}{}
57 \bookmark[level=section,dest=dedication]{Dedication}
58 \subfile{front/dedication}
59
60 % Reset glossary and thus the acronyms
61 \glsresetall{}
62
63 % The actual document
64 \mainmatter%
65 \mainmatterfancy%
66 \setcounter{chapter}{-1}
67
68 % Introduction
69 \subfile{intro/intro}
70
71 \part[\'Etude --- Domain-Specific Languages]{\'Etude\\[2ex]\smaller{}Domain-Specific Languages}%
72 \label{prt:dsl}
73 \subfile{dsl/class} % Deep embedding with class
74 \subfile{dsl/first} % First-class data types
75
76 \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}%
77 \label{prt:top}
78 \subfile{top/4iot} % TOP for the IoT
79 \subfile{top/lang} % mTask DSL
80 \subfile{top/int} % Integration with iTask
81 \subfile{top/imp} % Implementation
82 \subfile{top/green} % Green computing
83 \subfile{top/finale} % Conclusion
84
85 \part[Tiered versus Tierless Programming]{\\[2ex]\smaller{}Tiered versus Tierless Programming}%
86 \label{prt:tvt}
87 \subfile{tvt/tvt} % Could Tierless Languages Reduce IoT Development Grief?
88
89 % Conclusion
90 \bookmarksetup{startatroot} % descend back out of the previous part
91 \addtocontents{toc}{\bigskip}% Insert some whitespace to make the TOC better
92 \subfile{concl/concl}
93
94 % Start appendix
95 \appendix%
96 \label{chp:appendix}
97 \addcontentsline{toc}{part}{Appendix}
98
99 \subfile{appx/c4hp}
100 \subfile{appx/mtask_aux}
101 \subfile{appx/bytecode}
102
103 \backmatter%
104 \backmatterfancy%
105 \bookmarksetup{startatroot} % descend back out of the appendix
106
107 % Bibliography
108 \phantomsection{}%
109 \label{chp:bibliography}
110 \addcontentsline{toc}{chapter}{Bibliography}
111 \bibliography{bib/other,bib/self,bib/tiot}
112
113 % Summary
114 \subfile{back/summary}
115
116 % Samenvatting
117 \subfile{back/samenvatting}
118
119 % Acknowledgements
120 \subfile{back/acknowledgements}
121
122 % Research data management
123 \subfile{back/research_data_management}
124
125 % Curriculum vitæ
126 \subfile{back/curriculum_vitae}
127
128 % Glossary
129 \printglossary[style=mcolindex]%
130
131 %% Lists of
132 %\cleardoublepage{}
133 %\phantomsection{}%
134 %\label{chp:listsof...}
135 %\addcontentsline{toc}{chapter}{Lists of \ldots}
136 %\begingroup
137 %\let\clearpage\relax
138 %\let\cleardoublepage\relax
139 %\listoffigures%
140 %\listoftables%
141 %\listofalgorithms%
142 %\lstlistoflistings%
143 %\endgroup
144
145 % Index
146 %\addcontentsline{toc}{chapter}{Index}%
147 %\label{chp:index}
148 %\printindex
149
150 \end{document}