# Declarative Programming for Microcontrollers -- Datalog on Arduino

arXiv: https://arxiv.org/abs/1909.00043 · HTML: https://mlsanity.com/paper/1909.00043/

## Key facts

- Cited by 1 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 30 Aug 2019.

## Built on by (most cited first, 1 of 1)

- [Defeasible Reasoning via Datalog^neg](https://mlsanity.com/paper/2106.10946/) (2021)

## Abstract (arXiv)

In this paper we describe an approach to programming microcontrollers based on the Arduino platform using Datalog as a clear and concise description language for system behaviors. The application areas of cheap and easily programmable microcontrollers, like robotics, home automation, and IoT devices hold mainstream appeal and are often used as motivation in natural science and technology teaching. The choice of programming languages for microcontrollers is severely limited, especially with regard to rule-based declarative languages. We use an approach that is based on the Dedalus language augmented with operations that allow for side-effects and takes the limited resources of a microcontroller into account. Our compiler and runtime environment allow to run Datalog programs on Arduino-based systems.
