\documentclass[twoside,10pt]{book}
-\def\mytitle{Orchestrating the Internet of Things with Task-Oriented Programming}
+\def\mytitle{Orchestrating the Internet of Things\texorpdfstring{\\}{ }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
+\overfullrule=1pt
% Just for the todonotes, can go when it's finished
-\usepackage[disable]{todonotes}
+\usepackage{todonotes}
\setuptodonotes{
backgroundcolor=white,
linecolor=black,
- size=scriptsize,
+% size=tiny,
}
-%\newcommand{\todo}[2][1]{1}
-%\newcommand{\listoftodos}{}
% Document info
-\title{\mytitle{} --- \mysubtitle{}}
+\title{\mytitle{}\texorpdfstring{\\[2ex]}{---}\smaller{}\mysubtitle{}}
\author{Mart Lubbers}
-
\date{\mydate}
\begin{document}
\frontmatterfancy%
%Titlepage
+\hypertarget{titlepage}{}
+\bookmark[level=section,dest=titlepage]{Titlepage}
\subfile{front/titlepage}
\newpage%
% Epigraph/motto
+\hypertarget{motto}{}
+\bookmark[level=section,dest=motto]{Motto}
\subfile{front/motto}
% Table of contents
\setcounter{tocdepth}{1}
+\hypertarget{contents}{}
+\bookmark[level=section,dest=contents]{Contents}
\tableofcontents
-\todo{to reduce the size: make listings font smaller}
\newpage%
% Dedication
+\hypertarget{dedication}{}
+\bookmark[level=section,dest=dedication]{Dedication}
\subfile{front/dedication}
% Reset glossary and thus the acronyms
\setcounter{chapter}{-1}
% Introduction
-\subfile{intro/introduction}
-% DSL
+\subfile{intro/intro}
-\part[Prelude: Domain-Specific Languages]{Prelude:\\[2ex]\smaller{}Domain-Specific Languages}%
+\part[\'Etude --- Domain-Specific Languages]{\'Etude\\[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
+\subfile{dsl/class} % Deep embedding with class
+\subfile{dsl/first} % First-class data types
-\part[Exposition: Task-Oriented Programming]{Exposition:\\[2ex]\smaller{}Task-Oriented Programming for the Internet of Things}%
+\part[\hspace{-9pt}Orchestrating the Internet of Things using Task-Oriented Programming]{\\[2ex]\smaller{}Orchestrating the Internet of Things using Task-Oriented Programming}%
\label{prt:top}
-\subfile{top/mtask} % MTask tutorial and implementation
-
-\part[Transformation: Tiered vs.\ Tierless Programming]{Transformation:\\[2ex]\smaller{}Tiered vs.\ Tierless Programming}%
+\subfile{top/4iot} % TOP for the IoT
+\subfile{top/lang} % mTask DSL
+\subfile{top/int} % Integration with iTask
+\subfile{top/imp} % Implementation
+\subfile{top/green} % Green computing
+\subfile{top/finale} % Conclusion
+
+\part[Tiered versus Tierless Programming]{\\[2ex]\smaller{}Tiered versus Tierless Programming}%
\label{prt:tvt}
-\subfile{tvt/tvt} % Could Tierless Languages Reduce IoT Development Grief?
+\subfile{tvt/tvt} % Could Tierless Languages Reduce IoT Development Grief?
+% Conclusion
\bookmarksetup{startatroot} % descend back out of the previous part
\addtocontents{toc}{\bigskip}% Insert some whitespace to make the TOC better
-\subfile{concl/conclusion}
+\subfile{concl/concl}
% Start appendix
\appendix%
\label{chp:appendix}
\addcontentsline{toc}{part}{Appendix}
-\subfile{appx/clean_for_haskell_programmers}
+\subfile{appx/c4hp}
\subfile{appx/mtask_aux}
\subfile{appx/bytecode}
\subfile{back/curriculum_vitae}
% Glossary
-\addcontentsline{toc}{chapter}{Glossary}%
-\label{chp:glossaries}
-\printglossary%
-%\printglossary[type=\acronymtype,style=mcolindex]%
-\printglossary[type=\acronymtype]%
+\printglossary[style=mcolindex]%
+\printglossary[type=\acronymtype,style=mcolindex]%
%% Lists of
%\cleardoublepage{}