2 \newcommand{\myacronym}[4][]{%
3 % \newacronym[type=\glsdefaulttype,#1]{#2}{#3}{#4}
4 \newabbreviation[#1]{#2}{#3}{#4}
6 \myacronym[category=noexpand
]{3COWS
}{3COWS
}{The three ``CO'' (Composability, Comprehensibility, Correctness) winter school
}
7 \myacronym{ADC
}{ADC
}{analog-to-digital converter
}
8 \myacronym{ADT
}{ADT
}{algebraic data type
}
9 \myacronym{API
}{API
}{application programming interface
}
10 \myacronym{ARDSL
}{ARDSL
}{\gls{ARDUINO
} \glsxtrshort{DSL
}}
11 \myacronym[category=noexpand
]{CEFP
}{CEFP
}{Central European
\glsxtrlong{FP
} School
}
12 \myacronym{CRS
}{CRS
}{\gls{CLEAN
} Raspberry Pi system
}
13 \myacronym{CRTS
}{CRTS
}{\gls{CLEAN
} Raspberry Pi temperature sensor
}
14 \myacronym{CWS
}{CWS
}{\gls{CLEAN
} \gls{WEMOS
} system
}
15 \myacronym{CWTS
}{CWTS
}{\gls{CLEAN
} \gls{WEMOS
} temperature sensor
}
16 \myacronym{DHT
}{DHT
}{digital humidity and temperature
}
17 \myacronym{DSL
}{DSL
}{domain-specific language
}
18 \myacronym{DVFS
}{DVFS
}{dynamic voltage and frequency scaling
}
19 \myacronym{ECO2
}{eCO
\textsubscript{2}}{equivalent carbon dioxide
}
20 \myacronym{EDSL
}{eDSL
}{embedded
\glsxtrlong{DSL
}}
21 \myacronym[prefixfirst=
{a\
},prefix=
{an\
}]{FP
}{FP
}{functional programming
}
22 \myacronym[prefixfirst=
{a\
},prefix=
{an\
}]{FRP
}{FRP
}{functional reactive programming
}
23 \myacronym[prefixfirst=
{a\
},prefix=
{an\
}]{FPGA
}{FPGA
}{field-programmable gate array
}
24 \myacronym{GADT
}{GADT
}{generalised
\glsxtrshort{ADT
}}
25 \myacronym{GHC
}{GHC
}{Glasgow
\gls{HASKELL
} Compiler
}
26 \myacronym{GPIO
}{GPIO
}{general-purpose
\glsxtrlong{IO
}}
27 \myacronym{GPL
}{GPL
}{general-purpose language
}
28 \myacronym{GRS
}{GRS
}{graph rewriting system
}
29 \myacronym{GUI
}{GUI
}{graphical
\glsxtrlong{UI
}}
30 \myacronym{HOAS
}{HOAS
}{high-order abstract syntax
}
31 \myacronym{IOT
}{Io
\kern-
.3mmT
}{internet of things
}
32 \myacronym[category=noexpand
]{IDE
}{IDE
}{integrated development environment
}
33 \myacronym[category=noexpand
]{IO
}{I/O
}{input/output
}
34 \myacronym{IR
}{IR
}{intermediate representation
}
35 \myacronym{ISR
}{ISR
}{interrupt service routine
}
36 \myacronym{LEAN
}{LEAN
}{language of East-Anglia and Nijmegen
}
37 \myacronym[category=noexpand,prefixfirst=
{a\
},prefix=
{an\
}]{LED
}{LED
}{light-emitting diode
}
38 \myacronym[category=noexpand
]{OLED
}{OLED
}{organic
\glsxtrshort{LED
}}
39 \myacronym[category=noexpand
]{OS
}{OS
}{operating system
}
40 \myacronym{OTA
}{OTA
}{over-the-air
}
41 \myacronym{PIR
}{PIR
}{passive infrared
}
42 \myacronym{PFRP
}{P-FRP
}{priority-based
\glsxtrshort{FRP
}}
43 \myacronym{PRS
}{PRS
}{\gls{PYTHON
} Raspberry Pi system
}
44 \myacronym{PWS
}{PWS
}{\gls{MICROPYTHON
} \gls{WEMOS
} system
}
45 \myacronym{PRTS
}{PRTS
}{\gls{PYTHON
} Raspberry Pi temperature sensor
}
46 \myacronym{PWTS
}{PWTS
}{\gls{MICROPYTHON
} \gls{WEMOS
} temperature sensor
}
47 \myacronym{QDSL
}{QDSL
}{quoted
\glsxtrshort{DSL
}}
48 \myacronym[category=noexpand
]{RAM
}{RAM
}{random-access memory
}
49 \myacronym{RFID
}{RFID
}{radio-frequency identification
}
50 \myacronym{RTOS
}{RTOS
}{real-time
\glsxtrshort{OS
}}
51 \myacronym{RTS
}{RTS
}{run-time system
}
52 \myacronym[prefixfirst=
{a\
},prefix=
{an\
}]{SDS
}{SDS
}{shared data source
}
53 \myacronym[prefixfirst=
{a\
},prefix=
{an\
}]{SN
}{SN
}{sensor network
}
54 \myacronym{SLOC
}{SLOC
}{source lines of code
}
55 \myacronym{TH
}{TH
}{Template
\gls{HASKELL
}}
56 \myacronym[category=noexpand
]{TCP
}{TCP
}{transmission control protocol
}
57 \myacronym{TOP
}{TOP
}{task-oriented programming
}
58 \myacronym{TOSD
}{TOSD
}{task-oriented software development
}
59 \myacronym{TRS
}{TRS
}{term rewriting system
}
60 \myacronym{TTH
}{TTH
}{typed
\glsxtrlong{TH
}}
61 \myacronym{TVOC
}{TVOC
}{total volatile organic compounds
}
62 \myacronym{UI
}{UI
}{user interface
}
63 \myacronym{UOD
}{UoD
}{universe of discourse
}
64 \myacronym{UOG
}{UoG
}{University of Glasgow
}
65 \myacronym{VM
}{VM
}{virtual machine
}
68 \newglossaryentry{ABC
}{%
70 description=
{-
\gls{CLEAN
}'s intermediate graph-rewriting language
},
72 \newglossaryentry{MTASK
}{%
74 description=
{- a
\glsxtrshort{TOP
} \glsxtrshort{EDSL
} for edge devices integrated with the
\gls{ITASK
} system
},
76 \newglossaryentry{ITASK
}{%
78 description=
{- a
\glsxtrshort{TOP
} \glsxtrshort{EDSL
} for creating distributed multi-user collaborative web applications
},
80 \newglossaryentry{TOPHAT
}{%
82 description=
{- a
\glsxtrshort{TOP
} language designed to formally capture the essence of
\gls{TOP
}}
84 \newglossaryentry{CLEAN
}{%
86 description=
{- Clean
\glsxtrlong{LEAN
}, a pure lazy
\glsxtrlong{FP
} language based on graph rewriting
}
88 \newglossaryentry{HASKELL
}{%
90 description=
{- a pure lazy
\glsxtrlong{FP
} language designed by a committe as a concept language
}
92 \newglossaryentry{HASKELL98
}{%
94 description=
{- a standardised version of
\gls{HASKELL
}},
96 \newglossaryentry{ARDUINO
}{%
98 description=
{- a widely used framework for programming microcontrollers
}
100 \newglossaryentry{MBED
}{%
102 description=
{- a widely used framework for programming microcontrollers designed for ARM cortex-M
}
104 \newglossaryentry{CPP
}{
106 description=
{- a general-purpose imperative programming language based on
\gls{C
}}
108 \newglossaryentry{C
}{
110 description=
{- a general-purpose imperative programming
}
112 \newglossaryentry{I2C
}{
113 name=I
\textsuperscript{2}C,
114 description=
{(Inter-Integrated Circuit)
{-
} a simple serial communication protocol often used to connect sensors to microcontrollers
}
116 \newglossaryentry{WIFI
}{
118 description=
{- is a family of wireless network protocols commonly used for local area networking
}
120 \newglossaryentry{SPI
}{
122 description=
{(Serial Peripheral Interface)
{-
} a synchronous serial communication protocol often used to connect sensors to microcontrollers
}
124 \newglossaryentry{TINYML
}{
126 description=
{- a deep learning framework for microcontrollers
}
128 \newglossaryentry{PYTHON
}{
130 description=
{- a multi-paradigm interpreted programming language
}
132 \newglossaryentry{MICROPYTHON
}{
134 description=
{- a
\gls{PYTHON
} implementation tailored for microcontrollers
}
136 \newglossaryentry{FREERTOS
}{
138 description=
{- an open-source
\gls{RTOS
} for microcontrollers
}
140 \newglossaryentry{ONEWIRE
}{
142 description=
{- a simple single wire communication protocol often used to connect sensors to microcontrollers
}
144 \newglossaryentry{JSON
}{
146 description=
{(JavaScript Object Notation)
{-
} a open data interchange format using human readable text
}
148 \newglossaryentry{MQTT
}{
150 description=
{(MQ Telemetry Transport)
{-
} a publish-subscribe network protocol designed for resource constrained devices
}
152 \newglossaryentry{WEMOS
}{
154 description=
{- a popular ESP8266 microcontroller based prototyping platform supporting
\gls{ARDUINO
}.
}