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