--- /dev/null
+@unpublished{koopman_tasks_2016,
+ title = {Tasks in a {Type}-{Safe} and {Extendible} {Domain} {Specific} {Language} for {Microprocessors}},
+ author = {Koopman, Pieter and Plasmeijers, Rinus},
+ year = {2016},
+ note = {Draft paper},
+}
+
+@incollection{achten_introduction_2015,
+ title = {An {Introduction} to {Task} {Oriented} {Programming}},
+ booktitle = {Central {European} {Functional} {Programming} {School}},
+ publisher = {Springer},
+ author = {Achten, Peter and Koopman, Pieter and Plasmeijer, Rinus},
+ year = {2015},
+ pages = {187--245},
+}
--- /dev/null
+\documentclass[a4paper]{article}
+
+\usepackage[british]{babel}
+\usepackage{booktabs}
+\usepackage{geometry}
+\usepackage{tabu}
+
+\title{Research Internship Proposal}
+\date{\today}
+\author{Mart Lubbers (s4109503)}
+
+\begin{document}
+\pagenumbering{gobble}
+\thispagestyle{empty}
+\clearpage
+\maketitle
+\subsection*{Practical information}
+\begin{table}[h]
+ \centering
+ \begin{tabu}{p{8em}X}
+ \toprule
+ \textbf{Start date} & September 2016\\
+ \midrule
+ \textbf{End date} & February 2017\\
+ \midrule
+ \textbf{Research group} & Software Science\\
+ \midrule
+ \textbf{Supervisors} & Rinus Plasmeijer, Pieter Koopman\\
+ \midrule
+ \textbf{Topics} & Functional programming, compilers, iTasks, embedded systems\\
+ \midrule
+ \textbf{Master courses already taken} &
+ Advanced Programming, Automated Reasoning,
+ Compiler Construction, Design of Embedded Systems,
+ ICT in a different culture, Model Checking,
+ Natural Computing, Research Seminar Software Science,
+ Testing Techniques\\
+ \bottomrule
+ \end{tabu}
+\end{table}
+
+\subsection*{Description of the research activities}
+In \emph{Task Oriented Programming} (TOP) a program is built out of pieces of
+work called \emph{tasks}~\cite{achten_introduction_2015}. Tasks differ from
+function in the way that they return a result. A task's return value can change
+over time. Task exist in many forms and they can be composed sequentially and
+in parallel. Some possible tasks are asking for user input via a web browser,
+setting up a TCP connection to another server or combining several tasks. At
+the moment there are several types of leaf tasks. A leaf task is a task that
+does not consist of tasks itself. Examples of leaf tasks are the so called
+editors.
+
+This proposal describes the effort to add another type of leaf task that
+focusses on microcontrollers. Microcontrollers are often not powerful
+enough to run a full-fledged task server and therefore there is the need to
+introduce special microcontroller tasks. Effort for this is already made by by
+the department~\cite{koopman_tasks_2016}. However, communication between the
+\emph{mTask} and the iTasks system is still lacking and exactly that will be the
+goal of the project. This requires adding a new type of leaf task that allows
+the user to run \emph{mTasks} on microcontrollers. The leaf task should
+abstract away from communication techniques and it should be relatively easy to
+add techniques. Techniques that are interesting to experiment with is Serial
+communication, Bluetooth, \textsc{WiFi}, \textsc{GSM} and \textsc{LoRa}.
+
+\bibliographystyle{ieeetr}
+\bibliography{p}
+\end{document}