add proposal
authorMart Lubbers <mart@martlubbers.net>
Mon, 19 Sep 2016 10:00:21 +0000 (12:00 +0200)
committerMart Lubbers <mart@martlubbers.net>
Mon, 19 Sep 2016 10:00:21 +0000 (12:00 +0200)
.gitignore [new file with mode: 0644]
proposal/Makefile [new file with mode: 0644]
proposal/p.bib [new file with mode: 0644]
proposal/p.tex [new file with mode: 0644]

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..edbf550
--- /dev/null
@@ -0,0 +1,5 @@
+*.aux
+*.log
+*.bbl
+*.blg
+*.pdf
diff --git a/proposal/Makefile b/proposal/Makefile
new file mode 100644 (file)
index 0000000..000e302
--- /dev/null
@@ -0,0 +1,15 @@
+DOCUMENTS:=p
+PDFLATEXFLAGS:=-halt-on-error
+PDFLATEX:=pdflatex $(PDFLATEXFLAGS)
+BIBTEX:=bibtex
+
+all: $(addsuffix .pdf,$(DOCUMENTS))
+
+%.pdf: %.tex %.bib
+       $(PDFLATEX) $<
+       $(BIBTEX) $(basename $<)
+       $(PDFLATEX) $<
+       $(PDFLATEX) $<
+
+clean:
+       $(RM) -v $(addprefix $(DOCUMENTS).,pdf log aux bbl blg)
diff --git a/proposal/p.bib b/proposal/p.bib
new file mode 100644 (file)
index 0000000..baed09c
--- /dev/null
@@ -0,0 +1,15 @@
+@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},
+}
diff --git a/proposal/p.tex b/proposal/p.tex
new file mode 100644 (file)
index 0000000..fb793d8
--- /dev/null
@@ -0,0 +1,67 @@
+\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}