arduino-copilot: Arduino programming in haskell using the stream DSL

[ bsd3, embedded, language, library ] [ Propose Tags ]

arduino-copilot contains the basic building blocks to program your Arduino Nano, Arduino Uno or compatible hardware using Haskell and Functional Reactive Programming (FRP).

arduino-copilot uses the Copilot stream domain-specific language (DSL) to generate an Arduino sketch, which can be loaded in the Arduino IDE and uploaded to the board. Other methods of deploying sketches to the Arduino, such as the Arduino-Makefile, can also be used with a sketch generated by arduino-copilot.

All the messy details are abstracted away, letting you focus on the desired behavior of the Arduino. This is all the code needed to make it blink its LED:

Copilot is a stream (i.e., infinite lists) domain-specific language (DSL) in Haskell that compiles into embedded C. Copilot contains an interpreter, multiple back-end compilers, and other verification tools. A tutorial, bug reports, and todos are available at https://github.com/Copilot-Language/copilot-discussion.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.0.1, 1.0.0, 1.0.1, 1.1.1, 1.2.0, 1.3.0, 1.4.0, 1.5.0, 1.5.1, 1.5.2, 1.5.3, 1.5.4, 1.5.5, 1.5.6, 1.5.7, 1.6.0, 1.7.0, 1.7.1, 1.7.2, 1.7.3, 1.7.4, 1.7.5, 1.7.6, 1.7.7, 1.7.8
Change log CHANGELOG
Dependencies base (>=4.5 && <5), copilot (>=3.1 && <3.2), copilot-c99 (>=3.1 && <3.2), directory, filepath, mtl, unix [details]
License BSD-3-Clause
Copyright 2020 Joey Hess
Author Joey Hess
Maintainer Joey Hess <id@joeyh.name>
Category Embedded, Language
Source repo head: git clone git://git.joeyh.name/haskell-arduino-copilot.git
Uploaded by JoeyHess at 2020-01-25T19:56:21Z
Distributions
Downloads 4482 total (89 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2020-01-25 [all 1 reports]