]> Git — Sourcephile - haskell/symantic.git/blob - symantic.cabal
Add Parsing.Token.
[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.Term
113 Language.Symantic.Compiling.Text
114 Language.Symantic.Compiling.Traversable
115 Language.Symantic.Compiling.Tuple2
116 Language.Symantic.Compiling.Unit
117 Language.Symantic.Interpreting
118 Language.Symantic.Interpreting.Dup
119 Language.Symantic.Interpreting.Host
120 Language.Symantic.Interpreting.Text
121 Language.Symantic.Lib.Data.Type.List
122 Language.Symantic.Lib.Data.Type.Peano
123 Language.Symantic.Parsing
124 Language.Symantic.Parsing.Token
125 Language.Symantic.Transforming
126 Language.Symantic.Transforming.Trans
127 Language.Symantic.Typing
128 Language.Symantic.Typing.Constant
129 Language.Symantic.Typing.Constraint
130 Language.Symantic.Typing.Family
131 Language.Symantic.Typing.Kind
132 Language.Symantic.Typing.Type
133 build-depends:
134 base >= 4.6 && < 5
135 , containers
136 , ghc-prim
137 , mono-traversable
138 , transformers
139 , text
140
141 Test-Suite symantic-test
142 type: exitcode-stdio-1.0
143 default-extensions:
144 DataKinds
145 FlexibleContexts
146 FlexibleInstances
147 MultiParamTypeClasses
148 OverloadedStrings
149 ScopedTypeVariables
150 TupleSections
151 TypeApplications
152 TypeFamilies
153 TypeOperators
154 default-language: Haskell2010
155 ghc-options: -Wall -fno-warn-tabs
156 -main-is Test
157 -- -fprint-explicit-kinds
158 hs-source-dirs: Language/Symantic
159 main-is: Test.hs
160 other-modules:
161 Compiling.Applicative.Test
162 Compiling.Bool.Test
163 Compiling.Foldable.Test
164 Compiling.Functor.Test
165 Compiling.Map.Test
166 Compiling.MonoFunctor.Test
167 Compiling.Term.Test
168 Compiling.Test
169 Parsing.Test
170 Typing.Test
171 if flag(threaded)
172 ghc-options: -threaded -rtsopts -with-rtsopts=-N
173 if flag(dev)
174 cpp-options: -DDEVELOPMENT
175 ghc-options:
176 if flag(prof)
177 cpp-options: -DPROFILING
178 ghc-options: -fprof-auto
179 build-depends:
180 base >= 4.6 && < 5
181 , containers
182 , mono-traversable
183 , parsec
184 , transformers
185 , tasty >= 0.11
186 , tasty-hunit
187 , text
188 , symantic