add devices supported
authorMart Lubbers <mart@martlubbers.net>
Sun, 30 Apr 2017 19:42:43 +0000 (21:42 +0200)
committerMart Lubbers <mart@martlubbers.net>
Sun, 30 Apr 2017 19:42:43 +0000 (21:42 +0200)
appendix-planning.tex
methods.tex
theoretical-framework.tex [deleted file]

index e6e6db2..42da646 100644 (file)
@@ -30,6 +30,7 @@
                \midrule
                3-9 April & Dynamic task and share allocation, NodeMCU support\\
                10-16 April & Functions, finish up dynamic allocation\\
+               & come up with nice demo\\
                17-23 April & Not much, my wedding\\
                24-30 April & Start writing introduction and literatu embedding.\\
                & Use real shares and share shares between tasks\\
index 473efcf..1cf3b68 100644 (file)
@@ -1,4 +1,5 @@
 \section{\acrlong{TOP}}
+\subsection{\gls{iTasks}}
 \gls{TOP} is a recent new programming paradigm implemented as
 \gls{iTasks}\cite{achten_introduction_2015} in the pure lazy functional
 language \gls{Clean}\cite{brus_cleanlanguage_1987}. \gls{iTasks} is a
@@ -41,7 +42,10 @@ enterName = enterInformation "Enter your name" []
        \caption{Example of a generated user interface}
 \end{figure}
 
+\subsection{Combinators}
+
 \section{\acrlong{EDSL}s}
+\todo{while iTasks is also a DSL\ldots}
 \glspl{mTask} are expressed in a class based shallowly embedded \gls{EDSL}.
 There are two main types of \glspl{EDSL}.
 \todo{Small shallow embedded dsl intro}
@@ -49,19 +53,25 @@ There are two main types of \glspl{EDSL}.
 \todo{Show that class based has the best of both worlds}
 
 \section{Architecture}
-\section{Devices}
-
+\subsection{Devices}
 The client code for the devices is compiled from one codebase. For a device to
 be eligible for \glspl{mTask} it must be able to compile the shared codebase
 and implement (part of) the device specific interface. The shared codebase only
 uses standard \gls{C} and no special libraries or tricks are used. Therefore
 the code is compilable for almost any device or system. Note that it is not
-needed to implement a full interface\todo{handshake}. The full interface,
-listed in Appendix~\label{app:device-interface}\todo{update interface listing},
-also includes functions for accessing the peripherals that not every device
-might have. Devices can choose what to implement by setting the correct macros
-in the top of the file.
-\todo{Supported devices}
+needed to implement a full interface. The full interface, listed in
+Appendix~\label{app:device-interface}\todo{update interface listing}, also
+includes functions for accessing the peripherals that not every device might
+have. Devices can choose what to implement by setting the correct macros in the
+top of the file. When a server connects to a client the specifications are
+communicated.
+
+The current list of supported and tested devices is as follows:
+\begin{itemize}
+       \item $^*$\texttt{NIX} systems such as Linux
+       \item STM32 like development boards supported by \texttt{ChibiOS}.
+       \item \emph{Arduino} compatible microcontrollers
+\end{itemize}
 
 \subsection{Specification}
 Devices are stored in a record type and all devices in the system are stored in
@@ -75,11 +85,10 @@ exact specification is listed in Listing~\ref{lst:devicespec}
 \begin{lstlisting}[language=Clean,label={lst:devicespec},
        caption={Device specification for \glspl{mTask}}]
 :: MTaskDeviceSpec =
-       {haveLed :: Bool
-       ,haveAio :: Bool
-       ,haveDio :: Bool
-       ,taskSpace :: Int // Bytes
-       ,sdsSpace  :: Int // Bytes
+       {haveLed     :: Bool
+       ,haveAio     :: Bool
+       ,haveDio     :: Bool
+       ,bytesMemory :: Int
        }
 \end{lstlisting}
 \todo{Explain specification, combine task and share space}
diff --git a/theoretical-framework.tex b/theoretical-framework.tex
deleted file mode 100644 (file)
index 59975f1..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-\section{\acrlong{TOP}}
-
-
-\begin{lstlisting}[language=Clean,label={lst:test},caption={Caption}]
-module Life
-
-Start :: *World -> *World
-Start w = w
-\end{lstlisting}
-
-\gls{TOP} is a recent new programming paradigm implemented as
-\gls{iTasks}~\cite{achten_introduction_2015} in
-the pure lazy functional language \gls{Clean}
-
-\todo{Main terms}
-The lazy functional programming language based on graph rewriting
-\gls{Clean}~\cite{brus_cleanlanguage_1987}
-
-\section{\acrlong{DSL}s}
-
-