on e294e0e help sign in
Idris-dev/idris.cabal
125 lines 5.4 kB history raw
1Name: idris
2Version: 0.9.7
3License: BSD3
4License-file: LICENSE
5Author: Edwin Brady
6Maintainer: Edwin Brady <eb@cs.st-andrews.ac.uk>
7Homepage: http://www.idris-lang.org/
9Stability: Beta
10Category: Compilers/Interpreters, Dependent Types
11Synopsis: Functional Programming Language with Dependent Types
12Description: Idris is a general purpose language with full dependent types.
13 It is compiled, with eager evaluation.
14 Dependent types allow types to be predicated on values,
15 meaning that some aspects of a program's behaviour can be
16 specified precisely in the type. The language is closely
17 related to Epigram and Agda. There is a tutorial at <http://www.idris-lang.org/documentation>.
18 Features include:
19 .
20 * Full dependent types with dependent pattern matching
21 .
22 * where clauses, with rule, simple case expressions,
23 pattern matching let and lambda bindings
24 .
25 * Type classes, monad comprehensions
26 .
27 * do notation, idiom brackets, syntactic conveniences for lists,
28 tuples, dependent pairs
29 .
30 * Totality checking
31 .
32 * Coinductive types
33 .
34 * Indentation significant syntax, extensible syntax
35 .
36 * Tactic based theorem proving (influenced by Coq)
37 .
38 * Cumulative universes
39 .
40 * Simple foreign function interface (to C)
41 .
42 * Hugs style interactive environment
44Cabal-Version: >= 1.6
47Build-type: Custom
50Data-files: rts/libidris_rts.a rts/idris_rts.h rts/idris_gc.h
51 rts/idris_stdfgn.h rts/idris_main.c rts/idris_gmp.h
52 rts/libtest.c
53 js/Runtime-common.js
54 js/Runtime-node.js
55 js/Runtime-browser.js
56Extra-source-files: lib/Makefile lib/*.idr lib/Prelude/*.idr
57 lib/Network/*.idr lib/Control/*.idr
58 lib/Control/Monad/*.idr lib/Language/*.idr
59 lib/System/Concurrency/*.idr
60 lib/Data/*.idr lib/Debug/*.idr
61 lib/Decidable/*.idr
62 tutorial/examples/*.idr lib/base.ipkg
63 effects/Makefile effects/*.idr effects/Effect/*.idr
64 effects/effects.ipkg
65 config.mk
66 rts/*.c rts/*.h rts/Makefile
67 js/*.js
68 java/org/idris/rts/*.java
70source-repository head
71 type: git
72 location: git://github.com/edwinb/Idris-dev.git
74Flag Java
75 Description: Build the Java RTS
76 Default: False
78Flag NoEffects
79 Description: Do not build the effects package
80 Default: False
82Executable idris
83 Main-is: Main.hs
84 hs-source-dirs: src
85 Other-modules: Core.TT, Core.Evaluate, Core.Execute, Core.Typecheck,
86 Core.ProofShell, Core.ProofState, Core.CoreParser,
87 Core.ShellParser, Core.Unify, Core.Elaborate,
88 Core.CaseTree, Core.Constraints,
90 Idris.AbsSyntax, Idris.AbsSyntaxTree,
91 Idris.Parser, Idris.Help, Idris.REPL,
92 Idris.REPLParser, Idris.ElabDecls, Idris.Error,
93 Idris.Delaborate, Idris.Primitives, Idris.Imports,
94 Idris.Compiler, Idris.Prover, Idris.ElabTerm,
95 Idris.Coverage, Idris.IBC, Idris.Unlit,
96 Idris.DataOpts, Idris.Transforms, Idris.DSL,
97 Idris.UnusedArgs, Idris.Docs, Idris.Completion,
99 Util.Pretty, Util.System, Util.DynamicLinker,
100 Pkg.Package, Pkg.PParser,
102 IRTS.Lang, IRTS.LParser, IRTS.Bytecode, IRTS.Simplified,
103 IRTS.CodegenC, IRTS.Defunctionalise, IRTS.Inliner,
104 IRTS.Compiler, IRTS.CodegenJava, IRTS.BCImp,
105 IRTS.CodegenJavaScript,
106 IRTS.CodegenCommon, IRTS.DumpBC
108 Paths_idris
110 Build-depends: base>=4 && <5, parsec>=3, mtl, Cabal,
111 haskeline>=0.7, split, directory,
112 containers, process, transformers, filepath,
113 directory, binary, bytestring, text, pretty,
114 language-java>=0.2.2, libffi, unix
116 Extensions: MultiParamTypeClasses, FunctionalDependencies,
117 FlexibleInstances, TemplateHaskell
118 ghc-prof-options: -auto-all -caf-all
119 ghc-options: -rtsopts
120 if os(linux)
121 cpp-options: -DLINUX
122 if os(darwin)
123 cpp-options: -DMACOSX
124 if os(windows)
125 cpp-options: -DWINDOWS