many updates
[phd-thesis.git] / thesis.tex
1 \documentclass[twoside,10pt]{book}
2
3 \def\mytitle{Task-Oriented Internet of Things Programming}
4 \def\mysubtitle{a purely functional rhapsody}
5 \def\myauthor{Mart Lubbers}
6 \def\mydate{\formatdate{1}{6}{2023}}
7
8 \input{preamble}
9
10 % To show hboxes even when in non-draft mode
11 \overfullrule=1mm
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=scriptsize,
19 }
20
21 % Document info
22 \title{\mytitle{} --- \mysubtitle{}}
23 \author{Mart Lubbers}
24
25 \date{\mydate}
26
27 \begin{document}
28 \selectlanguage{british}
29
30 \frontmatter%
31 %\addtitlethumb{Frontmatter}{}{white}{gray}{pagesLTS.0}
32
33 %Titlepage
34 \subfile{frontmatter/titlepage}
35 \newpage%
36
37 % Epigraph/motto
38 \subfile{frontmatter/motto}
39
40 % Table of contents
41 \setcounter{tocdepth}{1}
42 \tableofcontents
43 \newpage%
44
45 % Dedication
46 \subfile{frontmatter/dedication}
47
48 \listoftodos%
49
50 % Reset glossary and thus the acronyms
51 \glsresetall{}
52
53 % The actual document
54 \mainmatter%
55 \renewcommand\partname{Movement} % Rename parts to movements (rhapsody uhu)
56 \addthumb{Chapters}{\arabic{chapter}}{white}{gray} % Arabic chapter thumbs
57 \setcounter{chapter}{-1}
58
59 % Introduction
60 \subfile{introduction/introduction}
61 % DSL
62
63 \part{Domain-Specific Languages}%
64 \label{prt:dsl}
65
66 % DSL Techniques
67 \subfile{domain-specific_languages/dsl_techniques}
68
69 % Deep embedding with class
70 \subfile{domain-specific_languages/class_deep_embedding}
71
72 % First-class data types
73 \subfile{domain-specific_languages/first-class_datatypes}
74
75 \subfile{domain-specific_languages/strongly-typed_multi-view_stack-based_computations}
76
77 \part{Task-Oriented Programming for the Internet of Things}%
78 \label{prt:top}
79
80 % mTask by example
81 \subfile{task_oriented_programming/mtask_by_example}
82
83 % Interpreting
84 \subfile{task_oriented_programming/interpreting}
85
86 % Integration
87 \subfile{task_oriented_programming/integration}
88
89 % Beyond microprocessors
90 \subfile{task_oriented_programming/beyond_microprocessors}
91
92 \part{Tiered vs.\ tierless programming}%
93 \label{prt:tvt}
94
95 \subfile{tiered_vs._tierless_programming/smart_campus}
96
97 \chapter{Modelling naval scenaries using \acrshort{TOP} and \acrshort{IOT}}
98 Waarschijnlijk geen tijd voor
99
100 \bookmarksetup{startatroot}% this is it
101 \addtocontents{toc}{\bigskip}% perhaps as well
102 \subfile{conclusion/conclusion}
103
104 % Start appendix
105 \appendix%
106 \label{chp:appendix}
107 \addcontentsline{toc}{part}{Appendix}
108 \addthumb{Appendices}{\Alph{chapter}}{white}{gray} % Alpha appendix thumbs
109
110 \subfile{appendix/clean_for_haskell_programmers.tex}
111
112 \backmatter%
113 \addtitlethumb{Backmatter}{}{white}{gray}{pagesLTS.0} % Empty backmatter thumbs
114
115 % Bibliography
116 \phantomsection{}%
117 \label{chp:bibliography}
118 \addcontentsline{toc}{chapter}{Bibliography}
119 \bibliography{other,self}
120
121 % Summary
122 \subfile{backmatter/summary}
123
124 % Samenvatting
125 \subfile{backmatter/samenvatting}
126
127 % Acknowledgements
128 \subfile{backmatter/acknowledgements}
129
130 % Research data management
131 \subfile{backmatter/research_data_management}
132
133 % Curriculum vitæ
134 \subfile{backmatter/curriculum_vitae}
135
136 % Glossary
137 \addcontentsline{toc}{chapter}{Glossary}%
138 \label{chp:glossaries}
139 \printglossaries%
140
141 % Lists of
142 \cleardoublepage{}
143 \phantomsection{}%
144 \label{chp:listsof...}
145 \addcontentsline{toc}{chapter}{Lists of \ldots}
146 \begingroup
147 \let\clearpage\relax
148 \let\cleardoublepage\relax
149 \listoffigures%
150 %\listoftables%
151 %\listofalgorithms%
152 %\lstlistoflistings%
153 \endgroup
154
155 % Index
156 \addcontentsline{toc}{chapter}{Index}%
157 \label{chp:index}
158 \printindex
159
160 \end{document}