packages feed

arduino-copilot-0.0.1: arduino-copilot.cabal

Name: arduino-copilot
Version: 0.0.1
Cabal-Version: >= 1.8
License: BSD3
Maintainer: Joey Hess <id@joeyh.name>
Author: Joey Hess
Stability: Experimental
Copyright: 2020 Joey Hess
License-File: LICENSE
Build-Type: Simple
Category: Embedded, Language
Synopsis: Arduino programming in haskell using the stream DSL
Description:
 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:
 .
 -- > import Arduino
 -- > main = arduino $ do
 -- >    led =: clk (period 2) (phase 1)
 -- >    delay =: const16 100
 .
 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>.
Extra-Source-Files:
  CHANGELOG
  TODO
  stack.yaml
  demo/Makefile
  demo/README
  demo/demo.hs
  demo/pre-build-hook.sh

Library
  GHC-Options: -Wall -fno-warn-tabs
  Hs-Source-Dirs: src
  Exposed-Modules:
    Arduino
  Build-Depends:
    base (>= 4.5 && < 5),
    copilot (== 3.1.*),
    copilot-c99 (== 3.1.*),
    filepath,
    directory,
    mtl,
    unix

source-repository head
  type: git
  location: git://git.joeyh.name/haskell-arduino-copilot.git