579073b6625de8e928711e7ef3eb522a5f7db108
[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 % The actual document
61 \mainmatter%
62 \mainmatterfancy%
63 %\setcounter{chapter}{-1}
64 \glsresetall{} % Reset glossary and thus the acronyms
65
66 % Introduction
67 \subfile{intro/intro}
68
69 \part[\'Etude --- Domain-Specific Languages]{\'Etude\\[2ex]\smaller{}Domain-Specific Languages}%
70 \label{prt:dsl}
71 \subfile{dsl/class} % Deep embedding with class
72 \subfile{dsl/first} % First-class data types
73
74 % Part II
75 \subfile{top/top}
76
77 \part[Tiered versus Tierless Programming]{\\[2ex]\smaller{}Tiered versus Tierless Programming}%
78 \label{prt:tvt}
79 \subfile{tvt/tvt} % Could Tierless Languages Reduce IoT Development Grief?
80
81 % Conclusion
82 \bookmarksetup{startatroot} % descend back out of the previous part
83 \addtocontents{toc}{\bigskip}% Insert some whitespace to make the TOC better
84 \subfile{coda/coda}
85
86 % Start appendix
87 \appendix%
88 \label{chp:appendix}
89 \addcontentsline{toc}{part}{Appendix}
90
91 \subfile{appx/c4hp}
92 \subfile{appx/mtask_aux}
93 \subfile{appx/bytecode}
94
95 \backmatter%
96 \backmatterfancy%
97 \bookmarksetup{startatroot} % descend back out of the appendix
98
99 % Bibliography
100 \phantomsection{}%
101 \label{chp:bibliography}
102 \addcontentsline{toc}{chapter}{Bibliography}
103 \renewbibmacro*{begentry}{\midsentence}
104 \printbibliography%
105
106 % Summary
107 \subfile{back/summary}
108
109 % Samenvatting
110 \subfile{back/samenvatting}
111
112 % Acknowledgements
113 \subfile{back/acknowledgements}
114
115 % Research data management
116 \subfile{back/research_data_management}
117
118 % Curriculum vitæ
119 \subfile{back/curriculum_vitae}
120
121 % Glossary
122 \printglossary[style=mcolindex]%
123
124 %% Lists of
125 %\cleardoublepage{}
126 %\phantomsection{}%
127 %\label{chp:listsof...}
128 %\addcontentsline{toc}{chapter}{Lists of \ldots}
129 %\begingroup
130 %\let\clearpage\relax
131 %\let\cleardoublepage\relax
132 %\listoffigures%
133 %\listoftables%
134 %\listofalgorithms%
135 %\lstlistoflistings%
136 %\endgroup
137
138 % Index
139 %\addcontentsline{toc}{chapter}{Index}%
140 %\label{chp:index}
141 %\printindex
142
143 \end{document}