% Custom commands
\newcommand{\GHCmod}[1]{\texttt{#1}}
\newcommand{\aramsingh}{Ramsingh, A.\ (University of Glasgow)}
\newcommand{\dcolon}[0]{\mathbin{::}}
\newcommand{\doifmt}[1]{\href{https://doi.org/#1}{#1}}
\newcommand{\etc}{{\fontfamily{cmr}\selectfont{\itshape\/\&\kern-0.2em c}}}
\newcommand{\jsinger}{Singer, J.\ (University of Glasgow)}
\newcommand{\mlubbers}{Lubbers, M.\ (Radboud University)}
\newcommand{\pkoopman}{Koopman, P.\ (Radboud University)}
\newcommand{\ptrinder}{Trinder, P.\ (University of Glasgow)}
\newcommand{\rplasmeijer}{Plasmeijer, R.\ (Radboud University)}
\newcommand{\rdmentry}[5]{#1 (#2): #3. #4.\ \doifmt{#5}}
\newcommand{\rewriterate}[2]{\langle{}\mathit{#1}, \mathit{#2}\rangle{}}
\newcommand{\requiresGHCmod}[2][]{\footnote{Requires \GHCmod{#2} to be enabled. #1}}
\newcommand{\erasmusplus}{ERASMUS\raisebox{.25ex}{+}}
\newcommand{\imtask}{\gls{ITASK}\slash\gls{MTASK}}
\newcommand{\citask}{\gls{CLEAN}\slash\gls{ITASK}}
\newcommand{\Citask}{\Gls{CLEAN}\slash\gls{ITASK}}
\newcommand{\cmtask}{\gls{CLEAN}\slash\gls{MTASK}}
\newcommand{\Cmtask}{\Gls{CLEAN}\slash\gls{MTASK}}
\newcommand{\cimtask}{\gls{CLEAN}\slash\gls{ITASK}\slash\gls{MTASK}}
\newcommand{\Cimtask}{\Gls{CLEAN}\slash\gls{ITASK}\slash\gls{MTASK}}
\newcommand{\ccpp}{\texorpdfstring{\gls{C}\slash\gls{CPP}}{C\slash{}C\texttt{++}}}
\newcommand{\Ccpp}{\texorpdfstring{\Gls{C}\slash\gls{CPP}}{C\slash{}C\texttt{++}}}
\newcommand{\stacksize}[1]{\parallel#1\parallel}

\newcommand{\cschemeE}[2]{\mathcal{E}\llbracket#1\rrbracket~#2}
\newcommand{\cschemeF}[1]{\mathcal{F}\llbracket#1\rrbracket}
\newcommand{\cschemeS}[3]{\mathcal{S}\llbracket#1\rrbracket~#2~#3}

\newcommand{\IOT}{\texorpdfstring{Io\kern-1ptT}{IoT}}
\newcommand{\IIC}{I\textsuperscript{2}C}
