copilot-language: A Haskell-embedded DSL for monitoring hard real-time distributed systems.

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain]

The concrete syntax for Copilot.

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.

Examples are available at https://github.com/Copilot-Language/Copilot/tree/master/Examples.


[Skip to ReadMe]

Properties

Versions0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 0.9.1, 2.1.1, 2.1.2, 2.2.0, 2.2.1, 3.0, 3.0, 3.0.1
Change logNone available
Dependenciesarray (==0.5.*), base (>=4.9 && <5), containers (>=0.4 && <0.7), copilot-core (==3.0.*), copilot-theorem (==3.0.*), data-reify (==0.6.*), ghc-prim (>=0.3 && <0.6), mtl (>=2.0 && <3) [details]
LicenseBSD-3-Clause
AuthorFrank Dedden, Lee Pike, Robin Morisset, Alwyn Goodloe, Sebastian Niller, Nis Nordby Wegmann
MaintainerFrank Dedden <dev@dedden.net>
CategoryLanguage, Embedded
Source repositoryhead: git clone https://github.com/Copilot-Language/copilot-language.git
UploadedMon Apr 1 22:15:35 UTC 2019 by frankdedden

Modules

Downloads

Maintainers' corner

For package maintainers and hackage trustees


Readme for copilot-language-3.0

[back to package description]

Build Status

Copilot: a stream DSL

Copilot-language contains the actual embedded domain specific language that Copilot provides to its users. It comes with a series of basic operators and functionality, typically enough for most applications. Extended functionality is provided by the copilot-libraries module.

Copilot is a runtime verification framework written in Haskell. It allows the user to write programs in a simple but powerful way using a stream-based approach.

Programs can be interpreted for testing, or translated C99 code to be incorporated in a project, or as a standalone application. The C99 backend ensures us that the output is constant in memory and time, making it suitable for systems with hard realtime requirements.

Installation

Copilot-language can be found on Hackage. It is typically only installed as part of the complete Copilot distribution. For installation instructions, please refer to the Copilot website.

Further information

For further information, install instructions and documentation, please visit the Copilot website: https://copilot-language.github.io

License

Copilot is distributed under the BSD-3-Clause license, which can be found here.