Name: ddc-core Version: 0.3.1.1 License: MIT License-file: LICENSE Author: The Disciplined Disciple Compiler Strike Force Maintainer: Ben Lippmeier Build-Type: Simple Cabal-Version: >=1.6 Stability: experimental Category: Compilers/Interpreters Homepage: http://disciple.ouroborus.net Bug-reports: disciple@ouroborus.net Synopsis: Disciplined Disciple Compiler 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 polymorphism 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 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 @ddc-tools@ package for a user-facing interpreter and compiler. Library Build-Depends: base == 4.6.*, deepseq == 1.3.*, containers == 0.5.*, array == 0.4.*, directory == 1.2.*, transformers == 0.3.*, mtl == 2.1.*, ddc-base == 0.3.1.* Exposed-modules: DDC.Core.Lexer.Names DDC.Core.Lexer.Tokens DDC.Core.Transform.LiftT DDC.Core.Transform.LiftX DDC.Core.Transform.Reannotate DDC.Core.Transform.Rename DDC.Core.Transform.SpreadX DDC.Core.Transform.SubstituteTX DDC.Core.Transform.SubstituteWX DDC.Core.Transform.SubstituteXX DDC.Core.Transform.Trim DDC.Core.Check DDC.Core.Collect DDC.Core.Compounds DDC.Core.DaCon DDC.Core.Exp DDC.Core.Fragment DDC.Core.Lexer DDC.Core.Load DDC.Core.Module DDC.Core.Parser DDC.Core.Predicates DDC.Core.Pretty DDC.Type.Transform.Crush DDC.Type.Transform.Instantiate DDC.Type.Transform.LiftT DDC.Type.Transform.Rename DDC.Type.Transform.SpreadT DDC.Type.Transform.SubstituteT DDC.Type.Transform.Trim DDC.Type.Bind DDC.Type.Check DDC.Type.Collect DDC.Type.Compounds DDC.Type.DataDef DDC.Type.Env DDC.Type.Equiv DDC.Type.Exp DDC.Type.Predicates DDC.Type.Pretty DDC.Type.Subsumes DDC.Type.Sum DDC.Type.Universe Other-modules: DDC.Core.Check.CheckDaCon DDC.Core.Check.CheckExp DDC.Core.Check.CheckModule DDC.Core.Check.CheckWitness DDC.Core.Check.ErrorMessage DDC.Core.Check.Error DDC.Core.Check.TaggedClosure DDC.Core.Collect.Support DDC.Core.Collect.Free DDC.Core.Exp.Base DDC.Core.Exp.NFData DDC.Core.Fragment.Compliance DDC.Core.Fragment.Error DDC.Core.Fragment.Feature DDC.Core.Fragment.Profile DDC.Core.Lexer.Comments DDC.Core.Lexer.Offside DDC.Core.Parser.Base DDC.Core.Parser.Exp DDC.Core.Parser.Module DDC.Core.Parser.Param DDC.Core.Parser.Type DDC.Core.Parser.Witness DDC.Type.Check.CheckCon DDC.Type.Check.Error DDC.Type.Check.ErrorMessage DDC.Type.Collect.FreeT DDC.Type.Exp.Base DDC.Type.Exp.NFData GHC-options: -Wall -fno-warn-orphans -fno-warn-missing-signatures -fno-warn-unused-do-bind Extensions: BangPatterns ParallelListComp PatternGuards RankNTypes FlexibleContexts FlexibleInstances MultiParamTypeClasses UndecidableInstances KindSignatures NoMonomorphismRestriction ScopedTypeVariables StandaloneDeriving DoAndIfThenElse DeriveDataTypeable ViewPatterns