Proceedings of the 22nd International Symposium on Principles and Practice of Declarative Programming 2020
DOI: 10.1145/3414080.3414092
|View full text |Cite
|
Sign up to set email alerts
|

Hailstorm: A Statically-Typed, Purely Functional Language for IoT Applications

Abstract: With the growing ubiquity of Internet of Things (IoT), more complex logic is being programmed on resource-constrained IoT devices, almost exclusively using the C programming language. While C provides low-level control over memory, it lacks a number of highlevel programming abstractions such as higher-order functions, polymorphism, strong static typing, memory safety, and automatic memory management. We present Hailstorm, a statically-typed, purely functional programming language that attempts to address the a… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1

Citation Types

0
2
0

Year Published

2020
2020
2023
2023

Publication Types

Select...
5
1
1

Relationship

2
5

Authors

Journals

citations
Cited by 11 publications
(4 citation statements)
references
References 60 publications
0
2
0
Order By: Relevance
“…Our previous work [22] has attempted to use the Functional Reactive Programming (FRP) paradigm [6] for the programming of microcontrollers. However, it suffered from the performance penalties of polling, owing to the pull-based semantics of FRP, which has been addressed in this higherorder concurrency model.…”
Section: Discussionmentioning
confidence: 99%
“…Our previous work [22] has attempted to use the Functional Reactive Programming (FRP) paradigm [6] for the programming of microcontrollers. However, it suffered from the performance penalties of polling, owing to the pull-based semantics of FRP, which has been addressed in this higherorder concurrency model.…”
Section: Discussionmentioning
confidence: 99%
“…Hailstorm [64], and Haski [80]. None of these languages are tierless IoT languages as they have no automatic integration with the server.…”
Section: Functional Reactivementioning
confidence: 99%
“…However, in contrast to in mTask, the tasks are not interpreted and there is no automated communication with a server. Other examples are CFRP (Suzuki et al, 2017), XFRP (Shibanai and Watanabe, 2018), Juniper (Helbling and Guyer, 2016), Hailstorm (Sarkar and Sheeran, 2020), Haski (Valliappan et al, 2020), arduino-copilot (Hess, 2020).…”
Section: Functional Reactive Programmingmentioning
confidence: 99%
“…FRP is a declarative paradigm often used for implementing the perception layer of an IoT stack. Examples include mfrp (Sawada and Watanabe, 2016), CFRP (Suzuki et al, 2017), XFRP (Shibanai and Watanabe, 2018), Juniper (Helbling and Guyer, 2016), Hailstorm (Sarkar and Sheeran, 2020), and Haski (Valliappan et al, 2020). None of these languages are tierless IoT languages as they have no automatic integration with the server.…”
Section: Functional Reactive Programmingmentioning
confidence: 99%