packages feed

ddc-core-flow-0.3.2.1: ddc-core-flow.cabal

Name:           ddc-core-flow
Version:        0.3.2.1
License:        MIT
License-file:   LICENSE
Author:         The Disciplined Disciple Compiler Strike Force
Maintainer:     Ben Lippmeier <benl@ouroborus.net>
Build-Type:     Simple
Cabal-Version:  >=1.6
Stability:      experimental
Category:       Compilers/Interpreters
Homepage:       http://disciple.ouroborus.net
Synopsis:       Disciplined Disciple Compiler data flow compiler.
Description:    
        Disciple Core Flow is a Domain Specific Language (DSL) for writing first
        order data flow programs.
   
        This package provides the language definition as a fragment of Disciple
        Core. It also provides an implementation of the lowering transform which
        converts data flow programs into imperative nested loop code.

        The @repa-plugin@ package provides a GHC plugin that transforms GHC core
        programs gained from vanilla Haskell sources. Use this package if you
        just want to write and run real programs.

        Alternatively, Disciple Core Flow programs can be transformed directly
        via the @ddc@ or @ddci-core@ command line interfaces, but DDC itself
        doesn't provide full compilation to machine code. Use GHC and the 
        @repa-plugin@ for that.
 

Library
  Build-Depends: 
        base            == 4.6.*,
        deepseq         == 1.3.*,
        containers      == 0.5.*,
        array           == 0.4.*,
        transformers    == 0.3.*,
        mtl             == 2.1.*,
        ddc-base        == 0.3.2.*,
        ddc-core        == 0.3.2.*,
        ddc-core-salt   == 0.3.2.*,
        ddc-core-simpl  == 0.3.2.*

  Exposed-modules:
        DDC.Core.Flow

        DDC.Core.Flow.Profile
        DDC.Core.Flow.Exp
        DDC.Core.Flow.Compounds
        DDC.Core.Flow.Env
        DDC.Core.Flow.Context

        DDC.Core.Flow.Prim

        DDC.Core.Flow.Procedure

        DDC.Core.Flow.Process.Process
        DDC.Core.Flow.Process.Operator
        DDC.Core.Flow.Process.Pretty
        DDC.Core.Flow.Process

        DDC.Core.Flow.Transform.Schedule
        DDC.Core.Flow.Transform.Prep
        DDC.Core.Flow.Transform.Slurp
        DDC.Core.Flow.Transform.Extract
        DDC.Core.Flow.Transform.Concretize
        DDC.Core.Flow.Transform.Thread
        DDC.Core.Flow.Transform.Wind

  Other-modules:
        DDC.Core.Flow.Prim.Base
        DDC.Core.Flow.Prim.KiConFlow
        DDC.Core.Flow.Prim.TyConFlow
        DDC.Core.Flow.Prim.TyConPrim
        DDC.Core.Flow.Prim.DaConFlow
        DDC.Core.Flow.Prim.DaConPrim
        DDC.Core.Flow.Prim.OpFlow
        DDC.Core.Flow.Prim.OpLoop
        DDC.Core.Flow.Prim.OpStore
        DDC.Core.Flow.Prim.OpPrim

        DDC.Core.Flow.Transform.Slurp.Operator
        DDC.Core.Flow.Transform.Slurp.Alloc

        DDC.Core.Flow.Transform.Schedule.SeriesEnv
        DDC.Core.Flow.Transform.Schedule.Nest

        DDC.Core.Flow.Transform.Extract.Intersperse


  GHC-options:
        -fno-warn-orphans
        -fno-warn-missing-signatures
        -fno-warn-unused-do-bind

  Extensions:
        KindSignatures
        NoMonomorphismRestriction
        ScopedTypeVariables
        StandaloneDeriving
        PatternGuards
        ParallelListComp
        DeriveDataTypeable
        ViewPatterns