1 \documentclass[a4paper]{book}
3 \usepackage[british]{babel}
5 \usepackage{geometry} % Papersize
6 \usepackage[titletoc]{appendix} % Appendices
7 \usepackage{rutitlepage/rutitlepage} % Titlepage
8 \usepackage{hyperref} % Hyperlinks
9 \usepackage{booktabs} % Better looking tables
10 \usepackage{todonotes} % Todo's
11 \usepackage{caption} % Captions
12 \usepackage{subcaption} % Subcaptions
13 \usepackage{lipsum} % dummy text
14 \usepackage{listings} % source code
18 pdftitle={iTasks and the Internet of Things},
19 pdfauthor={Mart Lubbers},
20 pdfsubject={iTasks and the Internet of Things},
21 pdfcreator={Mart Lubbers},
22 pdfproducer={Mart Lubbers},
23 pdfkeywords={TOP,iTasks,Clean,Function Programming,IoT},
27 \lstdefinelanguage{Clean}{%
28 alsoletter={ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_`1234567890},
29 alsoletter={~!@\#$\%^\&*-+=?<>:|\\.},
30 morekeywords={generic,implementation,definition,dynamic,module,import,from,where,in,of,case,let,infix,infixr,infixl,class,instance,with,if,derive},
33 morecomment=[n]{/*}{*/},
41 % Basic Clean constructs
43 {A.}{{$\forall\;\,$}}1
44 {E.}{{$\exists\;\,$}}1
50 {->}{{$\rightarrow$}}2
60 {+++}{{$+\!\!\!\!+\!\!\!\!+$}}2
62 {\{|*|\}}{{$\{\!|\!\!\star\!\!|\!\}$}}3
64 % Basic iTask constructs
65 {>||>}{{$\triangleright\triangleright$}}2
66 {>>=}{{\texttt{>>=}}}3
67 {>>|}{{\texttt{>>|}}}3
68 {?>>}{{\texttt{?>>}}}3
69 {!>>}{{\texttt{!>>}}}3
70 {-||-}{{\texttt{-||-}}}4
71 {.||.}{{\texttt{.||.}}}4
72 {.&&.}{{\texttt{.\&\&.}}}4
76 breakatwhitespace=false, % sets if automatic breaks should only happen at whitespace
77 breaklines=true, % sets automatic line breaking
78 captionpos=b, % sets the caption-position to bottom
79 keepspaces=true, % keeps spaces in text, useful for keeping indentation of code (possibly needs columns=flexible)
80 basicstyle=\footnotesize, % the size of the fonts that are used for the code
81 commentstyle=\itshape, % comment style
82 keywordstyle=\bfseries, % keyword style
83 stringstyle=\ttfamily, % string literal style
84 language=Clean, % the language of the code
85 showspaces=false, % show spaces everywhere adding particular underscores; it overrides 'showstringspaces'
86 showstringspaces=false, % underline spaces within strings only
87 showtabs=false, % show tabs within strings adding particular underscores
88 tabsize=4 % sets default tabsize to 2 spaces
91 \title{iTasks and the Internet of Things}
92 \author{Mart Lubbers BSc.\\
93 {\small\href{mailto:mart@martlubbers.net}{mart@martlubbers.net}}}