add license
[phd-thesis.git] / thesis.tex
1 \documentclass[twoside,10pt]{book}
2
3 %\def\mytitle{Task-Oriented Programming for the Internet of Things}
4 \def\mytitle{Task-Oriented Internet of Things Programming}
5 \def\mysubtitle{a purely functional rhapsody}
6 \def\myauthor{Mart Lubbers}
7 \def\mydate{\formatdate{1}{6}{2023}}
8
9 \input{preamble}
10
11 % To show hboxes even when in non-draft mode
12 \overfullrule=1mm
13
14 % Just for the todonotes, can go when it's finished
15 \usepackage{todonotes}
16 \setuptodonotes{
17 backgroundcolor=white,
18 linecolor=black,
19 size=scriptsize,
20 }
21
22 % Document info
23 \title{\mytitle{} --- \mysubtitle{}}
24 \author{Mart Lubbers}
25
26 \date{\mydate}
27
28 \begin{document}
29 \selectlanguage{british}
30
31 \frontmatter%
32 %\addtitlethumb{Frontmatter}{}{white}{gray}{pagesLTS.0}
33
34 %Titlepage
35 \subfile{frontmatter/titlepage}
36 \newpage%
37
38 % Epigraph/motto
39 \subfile{frontmatter/motto}
40
41 % Table of contents
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 \part{Task-Oriented Programming}%
76 \label{prt:top}
77
78 % mTask by example
79 \subfile{task_oriented_programming/mtask_by_example}
80
81 % Interpreting
82 \subfile{task_oriented_programming/interpreting}
83
84 % Integration
85 \subfile{task_oriented_programming/integration}
86
87 \part{Tiered vs.\ tierless programming}%
88 \label{prt:tvt}
89
90 \subfile{tiered_vs._tierless_programming/smart_campus}
91
92 \chapter{Modelling naval scenaries using \acrshort{TOP} and \acrshort{IOT}}
93 Arjan's werk {NLARMS}?
94
95 % Start appendix
96 \appendix%
97 \label{chp:appendix}
98 \addthumb{Appendices}{\Alph{chapter}}{white}{gray} % Alpha appendix thumbs
99
100 \subfile{appendix/clean_for_haskell_programmers.tex}
101
102 \backmatter%
103 \addtitlethumb{Backmatter}{}{white}{gray}{pagesLTS.0} % Empty backmatter thumbs
104
105 % Bibliography
106 \phantomsection{}%
107 \label{chp:bibliography}
108 \addcontentsline{toc}{chapter}{Bibliography}
109 \bibliography{thesis}
110
111 % Summary
112 \subfile{backmatter/summary}
113
114 % Samenvatting
115 \subfile{backmatter/samenvatting}
116
117 % Acknowledgements
118 \subfile{backmatter/acknowledgements}
119
120 % Research data management
121 \subfile{backmatter/research_data_management}
122
123 % Curriculum vitæ
124 \subfile{backmatter/curriculum_vitae}
125
126 % Glossary
127 \addcontentsline{toc}{chapter}{Glossary}%
128 \label{chp:glossaries}
129 \printglossaries%
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}