directory structure
[phd-thesis.git] / thesis.tex
index 0a00e89..930e1de 100644 (file)
 \documentclass[twoside,10pt]{book}
 
+\def\mytitle{Orchestrating the Internet of Things with Task-Oriented Programming}
+\def\mysubtitle{a purely functional rhapsody}
+\def\myauthor{Mart Lubbers}
+\def\mydate{\formatdate{31}{12}{2022}}
+
 \input{preamble}
 
+% To show hboxes even when in non-draft mode
+\overfullrule=1mm
+
+% Just for the todonotes, can go when it's finished
+\usepackage[disable]{todonotes}
+\setuptodonotes{
+       backgroundcolor=white,
+       linecolor=black,
+       size=scriptsize,
+}
+%\newcommand{\todo}[2][1]{1}
+%\newcommand{\listoftodos}{}
+
 % Document info
-\title{Some title}
-\author{Some author}
+\title{\mytitle{} --- \mysubtitle{}}
+\author{Mart Lubbers}
 
-% If you want to fix the date: \formatdate{10}{7}{2017}}
-\date{\today}
+\date{\mydate}
 
 \begin{document}
-\frontmatter{}
-%\addtitlethumb{Frontmatter}{}{white}{gray}{pagesLTS.0}
+\selectlanguage{british}
+
+\frontmatter%
+\frontmatterfancy%
 
 %Titlepage
-\input{titlepage}
+\subfile{front/titlepage}
 \newpage%
-\input{motto}
+
+% Epigraph/motto
+\subfile{front/motto}
 
 % Table of contents
+\setcounter{tocdepth}{1}
 \tableofcontents
+\todo{to reduce the size: make listings font smaller}
 \newpage%
 
-\input{dedication}
+% Dedication
+\subfile{front/dedication}
 
 % Reset glossary and thus the acronyms
 \glsresetall{}
 
 % The actual document
 \mainmatter%
-\addthumb{Chapters}{\arabic{chapter}}{white}{gray}
+\mainmatterfancy%
+\setcounter{chapter}{-1}
+
+% Introduction
+\subfile{intro/introduction}
+% DSL
+
+\part[Prelude: Domain-Specific Languages]{Prelude:\\[2ex]\smaller{}Domain-Specific Languages}%
+\label{prt:dsl}
+\subfile{dsl/dsl_techniques}        % DSL Techniques
+\subfile{dsl/class_deep_embedding}  % Deep embedding with class
+\subfile{dsl/first-class_datatypes} % First-class data types
+
+\part[Exposition: Task-Oriented Programming]{Exposition:\\[2ex]\smaller{}Task-Oriented Programming for the Internet of Things}%
+\label{prt:top}
+\subfile{top/mtask} % MTask tutorial and implementation
+
+\part[Transformation: Tiered vs.\ Tierless Programming]{Transformation:\\[2ex]\smaller{}Tiered vs.\ Tierless Programming}%
+\label{prt:tvt}
+\subfile{tvt/tvt} % Could Tierless Languages Reduce IoT Development Grief?
 
-\chapter{Example}%
-\label{chp:example}
-\input{example}
+\bookmarksetup{startatroot} % descend back out of the previous part
+\addtocontents{toc}{\bigskip}% Insert some whitespace to make the TOC better
+\subfile{concl/conclusion}
 
 % Start appendix
 \appendix%
 \label{chp:appendix}
-\addthumb{Appendices}{\Alph{chapter}}{white}{gray}
+\addcontentsline{toc}{part}{Appendix}
 
-\chapter{An Appendix}%
-\label{chp:an_appendix}
-\input{an_appendix}
-
-\chapter{Research Data Management}%
-\label{chp:research_data_management}
-\input{research_data_management}
+\subfile{appx/clean_for_haskell_programmers}
+\subfile{appx/mtask_aux}
+\subfile{appx/bytecode}
 
 \backmatter%
-\stopthumb%
+\backmatterfancy%
+\bookmarksetup{startatroot} % descend back out of the appendix
+
 % Bibliography
 \phantomsection{}%
 \label{chp:bibliography}
 \addcontentsline{toc}{chapter}{Bibliography}
-\bibliographystyle{plain}
-\bibliography{thesis}
+\bibliography{other,self,tiot}
+
+% Summary
+\subfile{back/summary}
+
+% Samenvatting
+\subfile{back/samenvatting}
+
+% Acknowledgements
+\subfile{back/acknowledgements}
+
+% Research data management
+\subfile{back/research_data_management}
+
+% Curriculum vitæ
+\subfile{back/curriculum_vitae}
+
+% Glossary
+\addcontentsline{toc}{chapter}{Glossary}%
+\label{chp:glossaries}
+\printglossary%
+%\printglossary[type=\acronymtype,style=mcolindex]%
+\printglossary[type=\acronymtype]%
 
 %% Lists of
 %\cleardoublepage{}
 %\lstlistoflistings%
 %\endgroup
 
-% Abstract
-\chapter{Summary}%
-\label{chp:summary}
-\begin{center}
-       \noindent\input{summary}
-\end{center}
-
-% Samenvatting
-\chapter{Samenvatting}%
-\label{chp:samenvatting}
-\begin{center}
-       \noindent\input{samenvatting}
-\end{center}
-
-% Acknowledgements
-\chapter{Acknowledgements}%
-\label{chp:acknowledgements}
-\begin{center}
-       \noindent\input{acknowledgements}
-\end{center}
-
-\chapter{Research Data Management}%
-\label{chp:research_data_management}
-\input{research_data_management}
-
-% Curriculum Vitae
-\chapter{Curriculum Vit\ae}%
-\label{chp:curriculum_vitae}
-\input{curriculum_vitae}
-
-% Glossary
-\addcontentsline{toc}{chapter}{Glossary}%
-\label{chp:glossaries}
-\printglossaries%
-
 % Index
-\addcontentsline{toc}{chapter}{Index}%
-\label{chp:index}
-\printindex
+%\addcontentsline{toc}{chapter}{Index}%
+%\label{chp:index}
+%\printindex
 
 \end{document}