ddc-core-0.2.0.2: ddc-core.cabal
Name: ddc-core
Version: 0.2.0.2
License: MIT
License-file: LICENSE
Author: Ben Lippmeier
Maintainer: benl@ouroborus.net
Build-Type: Simple
Cabal-Version: >=1.6
Stability: experimental
Category: Compilers/Interpreters
Homepage: http://disciple.ouroborus.net
Bug-reports: disciple@ouroborus.net
Synopsis: Disciple Core language and type checker.
Description:
Disciple Core is an explicitly typed language based on System-F2, intended
as an intermediate representation for a compiler. In addition to the features of
System-F2 it supports region, effect and closure typing. Evaluation order is
left-to-right call-by-value by default, but explicit lazy evaluation is also supported.
There is also a capability system to track whether objects are mutable or constant,
and to ensure that computations that perform visible side effects are not suspended with
lazy evaluation.
See the @ddci-core@ package for a user-facing interpreter.
Library
Build-Depends:
base == 4.5.*,
containers == 0.4.*,
array == 0.4.*,
transformers == 0.2.*,
mtl == 2.0.*,
ddc-base == 0.2.0.*
Exposed-modules:
DDC.Core.Check.CheckExp
DDC.Core.Check.CheckWitness
DDC.Core.Check.Error
DDC.Core.Check.TaggedClosure
DDC.Core.Parser.Lexer
DDC.Core.Parser.Tokens
DDC.Core.Transform.LiftW
DDC.Core.Transform.LiftX
DDC.Core.Transform.SpreadX
DDC.Core.Transform.SubstituteTX
DDC.Core.Transform.SubstituteWX
DDC.Core.Transform.SubstituteXX
DDC.Core.Check
DDC.Core.Collect
DDC.Core.Compounds
DDC.Core.DataDef
DDC.Core.Exp
DDC.Core.Pretty
DDC.Core.Predicates
DDC.Core.Parser
DDC.Type.Check.Monad
DDC.Type.Transform.Crush
DDC.Type.Transform.Instantiate
DDC.Type.Transform.LiftT
DDC.Type.Transform.LowerT
DDC.Type.Transform.SpreadT
DDC.Type.Transform.SubstituteT
DDC.Type.Transform.Trim
DDC.Type.Check
DDC.Type.Compounds
DDC.Type.Env
DDC.Type.Equiv
DDC.Type.Exp
DDC.Type.Parser
DDC.Type.Predicates
DDC.Type.Rewrite
DDC.Type.Subsumes
DDC.Type.Sum
DDC.Type.Universe
Other-modules:
DDC.Core.Check.ErrorMessage
DDC.Type.Check.CheckCon
DDC.Type.Check.CheckError
DDC.Type.Pretty
GHC-options:
-Wall
-fno-warn-orphans
-fno-warn-missing-signatures
-fno-warn-unused-do-bind
Extensions:
ParallelListComp
PatternGuards
RankNTypes
FlexibleContexts
FlexibleInstances
MultiParamTypeClasses
UndecidableInstances
KindSignatures
NoMonomorphismRestriction
ScopedTypeVariables
StandaloneDeriving
DoAndIfThenElse