]> Git — Sourcephile - haskell/symantic.git/blob - symantic.cabal
Add tests for Compiling.
[haskell/symantic.git] / symantic.cabal
1 author: Julien Moutinho <julm+symantic@autogeree.net>
2 -- bug-reports: http://doc.autogeree.net/symantic/bugs
3 build-type: Simple
4 cabal-version: >= 1.24
5 category: Language
6 -- data-dir: data
7 -- data-files:
8 description:
9 Library for composing, typing, compiling, transforming and interpreting
10 a custom DSL (Domain-Specific Language)
11 expressing a subset of GHC's Haskell.
12 .
13 Your comments, problem reports, or questions are very welcome! :-)
14 .
15 NOTE: the symantic approach was developped for embedded DSL
16 by Jacques Carette, Oleg Kiselyov and Chung-chieh Shan,
17 see: <http://okmij.org/ftp/tagless-final/ Tagless-Final>.
18 .
19 NOTE: alternative libraries to do more or less the same things
20 include: <https://hackage.haskell.org/package/syntactic syntactic>.
21 extra-source-files:
22 extra-tmp-files:
23 -- homepage: http://pad.autogeree.net/informatique/symantic/
24 license: GPL-3
25 license-file: COPYING
26 maintainer: Julien Moutinho <julm+symantic@autogeree.net>
27 name: symantic
28 stability: experimental
29 synopsis: Library for Typed Tagless-Final Higher-Order Extensible DSL
30 tested-with: GHC==8.0.1
31 version: 3.20161208
32
33 Source-Repository head
34 location: git://git.autogeree.net/symantic
35 type: git
36
37 Flag dev
38 Default: False
39 Description: Turn on development settings.
40 Manual: True
41
42 Flag dump
43 Default: False
44 Description: Dump some intermediate files.
45 Manual: True
46
47 Flag prof
48 Default: False
49 Description: Turn on profiling settings.
50 Manual: True
51
52 Flag threaded
53 Default: False
54 Description: Enable threads.
55 Manual: True
56
57 Library
58 default-extensions:
59 ghc-options: -Wall -fno-warn-tabs -fprint-explicit-kinds
60 if flag(dev)
61 cpp-options: -DDEVELOPMENT
62 ghc-options:
63 -- -ddump-splices
64 -- -fno-warn-unused-do-bind -fno-warn-name-shadowing -fno-warn-missing-signatures
65 -- -fno-warn-type-defaults -fno-warn-orphans
66 if flag(dump)
67 ghc-options: -ddump-simpl -ddump-stg -ddump-to-file
68 if flag(prof)
69 cpp-options: -DPROFILING
70 ghc-options: -fprof-auto
71 default-language: Haskell2010
72 exposed-modules:
73 Language.Symantic
74 Language.Symantic.Lib.Data.Type.List
75 Language.Symantic.Lib.Data.Type.Peano
76 Language.Symantic.Typing
77 Language.Symantic.Typing.Kind
78 Language.Symantic.Typing.Constant
79 Language.Symantic.Typing.Type
80 Language.Symantic.Typing.Constraint
81 Language.Symantic.Typing.Syntax
82 Language.Symantic.Compiling
83 Language.Symantic.Compiling.Applicative
84 Language.Symantic.Compiling.Bool
85 Language.Symantic.Compiling.Char
86 Language.Symantic.Compiling.Either
87 Language.Symantic.Compiling.Eq
88 Language.Symantic.Compiling.Foldable
89 Language.Symantic.Compiling.Functor
90 Language.Symantic.Compiling.If
91 Language.Symantic.Compiling.Int
92 Language.Symantic.Compiling.Integer
93 Language.Symantic.Compiling.Integral
94 Language.Symantic.Compiling.IO
95 Language.Symantic.Compiling.List
96 Language.Symantic.Compiling.Map
97 Language.Symantic.Compiling.Maybe
98 Language.Symantic.Compiling.Monad
99 Language.Symantic.Compiling.Monoid
100 Language.Symantic.Compiling.Num
101 Language.Symantic.Compiling.Ord
102 Language.Symantic.Compiling.Term
103 Language.Symantic.Compiling.Text
104 Language.Symantic.Compiling.Traversable
105 Language.Symantic.Compiling.Tuple2
106 Language.Symantic.Interpreting
107 Language.Symantic.Interpreting.Host
108 Language.Symantic.Interpreting.Text
109 Language.Symantic.Interpreting.Dup
110 Language.Symantic.Transforming
111 Language.Symantic.Transforming.Trans
112 build-depends:
113 base >= 4.6 && < 5
114 , containers
115 , ghc-prim
116 -- , mono-traversable
117 , transformers
118 , text
119
120 Test-Suite symantic-test
121 type: exitcode-stdio-1.0
122 default-extensions:
123 OverloadedStrings
124 default-language: Haskell2010
125 ghc-options: -Wall -fno-warn-tabs -fprint-explicit-kinds
126 -main-is Test
127 hs-source-dirs: Language/Symantic
128 main-is: Test.hs
129 other-modules:
130 Compiling.Applicative.Test
131 Compiling.Bool.Test
132 Compiling.Foldable.Test
133 Compiling.Functor.Test
134 Compiling.Map.Test
135 Compiling.Term.Test
136 Compiling.Test
137 Typing.Test
138 if flag(threaded)
139 ghc-options: -threaded -rtsopts -with-rtsopts=-N
140 if flag(dev)
141 cpp-options: -DDEVELOPMENT
142 ghc-options:
143 if flag(prof)
144 cpp-options: -DPROFILING
145 ghc-options: -fprof-auto
146 build-depends:
147 base >= 4.6 && < 5
148 , containers
149 -- , mono-traversable
150 , transformers
151 , tasty >= 0.11
152 , tasty-hunit
153 , text
154 , symantic