Merge branch 'master' of git.martlubbers.net:msc-thesis1617
[msc-thesis1617.git] / glossaries.tex
index d05ca70..6c05c3e 100644 (file)
@@ -1,35 +1,71 @@
-\newglossaryentry{Arduino}{name=Arduino,
+\newglossaryentry{Arduino}{name=\emph{Arduino},
        description={is a cheap and popular microcontroller that is widely used for
        rapid prototyping}}
-\newglossaryentry{Clean}{name=Clean,
-       description={is a staticly typed pure lazy functional programming language based on graph
-               rewriting}}
-\newglossaryentry{Haskell}{name=Haskell,
-       description={is a staticly typed pure lazy functional programming language}}
-\newglossaryentry{iTasks}{name=iTasks,
-       description={is a \acrshort{TOP} implementation written as a \acrshort{EDSL}
-       in the \gls{Clean} programming language}}
-\newglossaryentry{Ivory}{name=Ivory,
+\newglossaryentry{Clean}{name={\emph{Clean}},
+       description={is a statically typed pure lazy functional programming
+       language based on graph rewriting}}
+\newglossaryentry{Haskell}{name={\emph{Haskell}},
+       description={is a statically typed pure lazy functional programming
+       language}}
+\newglossaryentry{iTasks}{name=\emph{iTasks},
+       description={is a \gls{TOP} implementation written as an
+       \gls{EDSL} in the \gls{Clean} programming language}}
+\newglossaryentry{Ivory}{name={\emph{Ivory}},
        description={is a type-safe \gls{EDSL} designed to generate \gls{C}-code
        for high-assurance low-level systems}}
-\newglossaryentry{Tower}{name=Tower,
-       description={is a type-safe \gls{EDSL} similar to \gls{Ivory} designed to
-       generate code for \acrlong{RTOS}}}
-\newglossaryentry{Task}{name=Task,
-       description={is the basic building block of a \acrshort{TOP} system}}
-\newglossaryentry{mTask}{name=mTask,
-       description={is an abstraction for \glspl{Task} living on \acrshort{IoT} devices}}
-\newglossaryentry{C}{name=C,
+\newglossaryentry{Task}{name=\emph{Task},
+       description={is the basic building block of a \gls{TOP} system}}
+\newglossaryentry{mTask}{name=\emph{mTask},
+       description={is an abstraction for \glspl{Task} living on \gls{IoT}
+       devices. Moreover, it is the name of an \gls{EDSL}}}
+\newglossaryentry{C}{name=\textsc{C},
        description={is low-level imperative programming language suitable for
        embedded devices}}
-\newglossaryentry{C++}{name=C++,
+\newglossaryentry{C++}{name={\textsc{C++}},
        description={is low-level imperative and object-oriented programming
        language suitable for embedded devices based on \gls{C}}}
-\newglossaryentry{SAPL}{name=SAPL,
+\newglossaryentry{SAPL}{name={\textsc{SAPL}},
        description={is an intermediate purely functional programming language}}
-\newglossaryentry{Firmata}{name=Firmata,
+\newglossaryentry{Firmata}{name={\emph{Firmata}},
        description={is standardized protocol for communicating with
        microcontrollers}}
-\newglossaryentry{Javascript}{name=Javascript,
+\newglossaryentry{Javascript}{name={\emph{Javascript}},
        description={is an imperative programming language designed to run in web
        browsers}}
+\newglossaryentry{Python}{name={\emph{Python}},
+       description={is an interpreted object oriented scripting language. Variants
+       exist that are suitable to run on microcontrollers such as
+       \emph{micropython}}}
+\newglossaryentry{LUA}{name={\emph{LUA}},
+       description={is an interpreted scripting language famous for having a very
+       lightweight interpreter that is easy to port.}}
+\newglossaryentry{LED}{name={LED},
+       description={Lighting Emitting Diode}}
+\newglossaryentry{mbed}{name={\textsc{mbed}},
+       description={is a programming framework for microcontrollers.}}
+\newcommand{\newglossacr}[2]{\newglossaryentry{#1}{
+       name={#1},
+       first={#2 (#1)},%
+       firstplural={#2\glspluralsuffix{} (#1\glspluralsuffix)},
+       description={#2}}}
+\newglossacr{ADT}    {Algebraic Datatype}
+\newglossacr{ARM}    {Acorn \glsentryname{RISC} Machine}
+\newglossacr{AST}    {Abstract Syntax Tree}
+\newglossacr{API}    {Application Programming Interface}
+\newglossacr{EDSL}   {Embedded Domain Specific Language}
+\newglossacr{GADT}   {Generalized Algebraic Data type}
+\newglossacr{GLONASS}{Global Navigation Satellite System}
+\newglossacr{GNSS}   {Global Navigation Satellite System}
+\newglossacr{GPIO}   {General-Purpose Input/Output}
+\newglossacr{GPS}    {Global Positioning System}
+\newglossacr{IDE}    {Integrated Development Environment}
+\newglossacr{IoT}    {Internet of Things}
+\newglossacr{JSON}   {JavaScript Object Notation}
+\newglossacr{LCD}    {Liquid Crystal Display}
+\newglossacr{RFID}   {Radio-Frequency Identification}
+\newglossacr{RISC}   {Reduced Instruction Set Computer}
+\newglossacr{RWST}   {Reader Writer State Transformer Monad}
+\newglossacr{SDS}    {Shared Data Source}
+\newglossacr{TCP}    {Transmission Control Protocol}
+\newglossacr{TOP}    {Task Oriented Programming}
+\newglossacr{MSB}    {Most Significant Byte}