2 \usepackage[utf8
]{inputenc}
18 \usepackage[T1,T2A
]{fontenc}
21 \usepackage[subpreambles=true
]{standalone
}
24 \usepackage{microtype
}
26 % No more room for a new \write
27 \usepackage{morewrites
}
29 % Internationalisation
30 \usepackage[dutch,russian,british
]{babel
}
31 %\babelfont[russian]{rm}{Liberation Serif}
33 % Appendices (used for subappendices, appendices per chapter)
36 % Cite bib entry completely
41 \usepackage{bookmark,hyperref
}
42 %\usepackage[pagebackref]{bookmark,hyperref}
43 % Setup pdf parameters: TODO
46 pdfauthor=
{\myauthor},
50 pdfkeywords=
{task-oriented programming, functional programming, domain specific languages, internet of things
},
55 \includexmp{CC_Attribution-NoDerivatives_4.0_International
}
63 \usepackage{subcaption
}
71 \usepackage{academicons
}
72 \newcommand{\orcid}[1]{\href{https://orcid.org/
#1}{\hspace{1mm
}\includegraphics[width=
1em
]{orcid
}\hspace{2mm
} https://orcid.org/
#1}}
77 % Automatically wrapping tables
80 % Use a fixed document date
81 \usepackage[nodayofweek
]{datetime
}
84 \usepackage{stmaryrd
} % Short arrow
85 \usepackage{textcomp
} % upquote
87 % General listings settings
91 breakatwhitespace=false,
96 escapeinside=
{(+
}{+)
},
% chktex 9
100 postbreak=
\mbox{\textcolor{gray
}{$
\hookrightarrow$
}\space},
102 showstringspaces=false,
108 \usepackage{lstlangclean
}
109 \usepackage{lstlanghaskell
}
110 \usepackage{lstlanghaskelllhstex
}
111 \newcommand{\cleaninline}[1]{\lstinline[language=Clean,postbreak=
]|
#1|
}
112 \newcommand{\haskellinline}[1]{\lstinline[language=Haskell,style=haskell,postbreak=
]|
#1|
}
113 \newcommand{\haskelllhstexinline}[1]{\lstinline[language=Haskell,style=haskelllhstex,postbreak=
]|
#1|
}
114 % Fix list of listings title
115 \renewcommand{\lstlistlistingname}{List of Listings
}
116 % Fix list of listings chapter separator
118 \let\my@chapter\@chapter
%
119 \renewcommand*
{\@chapter
}{%
120 \addtocontents{lol
}{\protect\addvspace{10pt
}}%
124 \lstnewenvironment{lstClean
}[1][]
126 \lstset{language=Clean,
#1}
127 \renewcommand*
{\lstlistingname}{Listing (Clean)
}
130 \lstnewenvironment{lstHaskell
}[1][]
132 \lstset{language=Haskell,style=haskell,
#1}%
133 \renewcommand*
{\lstlistingname}{Listing (Haskell)
}
136 \lstnewenvironment{lstHaskellLhstex
}[1][]
138 \lstset{language=Haskell,style=haskelllhstex,
#1}%
139 \renewcommand*
{\lstlistingname}{Listing (Haskell)
}
143 % Glossaries and acronyms
144 \usepackage[acronym,nonumberlist
]{glossaries
}
145 % Fix gls in hyperlink errors
146 \pdfstringdefDisableCommands{%
161 \def\glsentrytext#1{}%
164 \def\Glsentrytext#1{}%
169 \usepackage{titlecaps
}
171 % Titlecase glossary command
172 \newcommand{\glst}[1]{\titlecap{\glsentrylong{#1}}}
173 \newcommand{\Glst}[1]{\glst{#1}}
176 \usepackage[algochapter
]{algorithm2e
}
177 % Fix the algorithm font
178 \renewcommand\AlCapFnt{\normalfont}
185 % Custom enumerations
186 \usepackage[inline,shortlabels
]{enumitem
}
188 \setlist[description
]{leftmargin=
\parindent}
191 \usepackage{epigraph
}
193 % Thumb marks on the page
198 topthumbmargin=
{auto
},
199 bottomthumbmargin=
{auto
},
200 eventxtindent=
{.5cm
},
201 oddtxtexdent=
{.3cm
}]{thumbs
}
203 % Custom headers and footers
204 \usepackage{fancyhdr
}
208 % Tables spanning pages
209 \usepackage{longtable
}
212 \usepackage{cleveref
}
214 % To patch the chapter command
215 \usepackage{etoolbox
}
216 % Have better page numbering in chapters
217 \patchcmd{\chapter}{plain
}{headings
}{}{}
219 % Increase the depth for the table of contents
220 \setcounter{secnumdepth
}{3}
221 \renewcommand{\contentsname}{Table of Contents
} % change the name of the TOC
222 \AtBeginDocument{\addtocontents{toc
}{\protect\thispagestyle{empty
}}} % to remove page numbering from the TOC
224 % Initialize the glossaries
229 \newcommand{\GHCmod}[1]{\texttt{#1}}
230 \newcommand{\requiresGHCmod}[1]{\footnote{Requires
\GHCmod{#1} to be enabled.
}}
231 \newcommand{\etc}{{\fontfamily{cmr
}\selectfont{\itshape\/\&c
}}}
232 \newcommand{\rdmentry}[6]{#1:
#2 (
#3):
#4.
#5.\
\href{https://doi.org/
#6}{#6}}
233 \newcommand{\mlubbers}{Lubbers, M.\ (Radboud University)
}
234 \newcommand{\pkoopman}{Koopman, dr.\ P.\ (Radboud University)
}
235 \newcommand{\rplasmeijer}{Plasmeijer, prof.\ dr.\ ir.\ R.\ (Radboud University)
}
237 \bibliographystyle{alpha
}
239 \usepackage{subfiles
}