name: imperative-edsl
version: 0.5
synopsis: Deep embedding of imperative programs with code generation
description: Deep embedding of imperative programs with code generation.
.
The main module for users who want to write imperative
programs is "Language.Embedded.Imperative" (and optionally
"Language.Embedded.CExp" which provides a simple expression
language).
.
Examples can be found in the @examples@ directory.
license: BSD3
license-file: LICENSE
author: Anders Persson, Emil Axelsson, Markus Aronsson
maintainer: emax@chalmers.se
copyright: Copyright (c) 2015-2016, Anders Persson, Emil Axelsson, Markus Aronsson
homepage: https://github.com/emilaxelsson/imperative-edsl
bug-reports: https://github.com/emilaxelsson/imperative-edsl/issues
category: Language
build-type: Simple
cabal-version: >=1.10
extra-source-files:
examples/*.hs
tests/*.hs
source-repository head
type: git
location: git@github.com:emilaxelsson/imperative-edsl.git
Flag old-syntactic
Description: Use syntactic < 2
Default: False
library
exposed-modules:
Control.Monads
System.IO.Fake
Language.C.Monad
Language.Embedded.Expression
Language.Embedded.Traversal
Language.Embedded.Imperative.CMD
Language.Embedded.Imperative.Args
Language.Embedded.Imperative.Frontend.General
Language.Embedded.Imperative.Frontend
Language.Embedded.Imperative
Language.Embedded.Concurrent.CMD
Language.Embedded.Concurrent
Language.Embedded.Signature
Language.Embedded.Backend.C
Language.Embedded.Backend.C.Expression
Language.Embedded.CExp
other-modules:
Language.Embedded.Imperative.Backend.C
Language.Embedded.Concurrent.Backend.C
-- No need to export these since only the instances are interesting
default-language: Haskell2010
default-extensions:
ConstraintKinds
DataKinds
DefaultSignatures
DeriveDataTypeable
DeriveFoldable
DeriveFunctor
DeriveTraversable
FlexibleContexts
FlexibleInstances
GADTs
GeneralizedNewtypeDeriving
MultiParamTypeClasses
PatternSynonyms
PolyKinds
Rank2Types
RecordWildCards
ScopedTypeVariables
StandaloneDeriving
TypeFamilies
TypeOperators
ViewPatterns
other-extensions:
CPP
QuasiQuotes
UndecidableInstances
build-depends:
array,
base >=4 && <5,
containers,
deepseq,
directory,
exception-transformers,
ghc-prim,
language-c-quote >= 0.11 && < 0.12,
mainland-pretty >= 0.4 && < 0.5,
microlens >= 0.3.0.0,
microlens-mtl,
microlens-th,
mtl,
process,
operational-alacarte >= 0.2,
BoundedChan,
srcloc,
time >= 1.5.0.1
if flag(old-syntactic)
build-depends:
syntactic < 2
else
build-depends:
open-typerep >= 0.4,
syntactic >= 3.2
hs-source-dirs: src
test-suite Tests
type: exitcode-stdio-1.0
hs-source-dirs: tests examples
main-is: Tests.hs
default-language: Haskell2010
build-depends:
base,
imperative-edsl,
syntactic,
tasty-quickcheck,
tasty-th