# Juniper: A Functional Reactive Programming Language for the Arduino

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

## Key facts

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

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

- [Hailstorm : A Statically-Typed, Purely Functional Language for IoT Applications](https://mlsanity.com/paper/2105.13468/) (2021)

## Abstract (arXiv)

This paper presents the design and implementation of Juniper: a functional reactive programming language (FRP) targeting the Arduino and related microcontroller systems. Juniper provides a number of high level features, including parametric polymorphic functions, anonymous functions, automatic memory management, and immutable data structures. Also included is a standard library which offers many useful FRP signal processing functions. Juniper is translated to standard C++ and compiled with the existing Arduino development tools, allowing Juniper programs to fit on resource-constrained devices, and enabling seamless interoperability with existing C++ libraries for these devices.
