name: imperative-edsl
version: 0.4.1
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.Expr" 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 2015 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
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
Language.C.Monad
Language.Embedded.Expression
Language.Embedded.Traversal
Language.Embedded.Imperative.Args
Language.Embedded.Imperative.CMD
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.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
DefaultSignatures
DeriveDataTypeable
DeriveFunctor
FlexibleContexts
FlexibleInstances
GADTs
GeneralizedNewtypeDeriving
MultiParamTypeClasses
Rank2Types
ScopedTypeVariables
StandaloneDeriving
TypeFamilies
TypeOperators
other-extensions:
PolyKinds
QuasiQuotes
UndecidableInstances
build-depends:
array,
base >=4 && <5,
constraints,
containers,
exception-transformers,
language-c-quote >= 0.11 && < 0.12,
mainland-pretty >= 0.4 && < 0.5,
microlens >= 0.3.0.0,
microlens-mtl,
microlens-th,
mtl,
operational-alacarte,
tagged,
-- tagged needed for GHC 7.6
BoundedChan,
srcloc
if flag(old-syntactic)
build-depends:
syntactic < 2
else
build-depends:
open-typerep >= 0.4,
syntactic >= 3.2
hs-source-dirs: src
test-suite Examples
type: exitcode-stdio-1.0
hs-source-dirs: tests examples
main-is: Examples.hs
other-modules:
Concurrent
Imperative
default-language: Haskell2010
build-depends:
base,
imperative-edsl,
mainland-pretty,
directory,
process
test-suite Semantics
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: Semantics.hs
default-language: Haskell2010
build-depends:
base,
imperative-edsl