]> Git — Sourcephile - haskell/symantic-base.git/blob - symantic-base.cabal
iface: add interpreter `LetInserter`
[haskell/symantic-base.git] / symantic-base.cabal
1 cabal-version: 3.0
2 name: symantic-base
3 maintainer: mailto:symantic-base@sourcephile.fr
4 bug-reports: https://mails.sourcephile.fr/inbox/symantic-base
5 homepage: https://git.sourcephile.fr/haskell/symantic-base
6 author: Julien Moutinho <julm+symantic-base@sourcephile.fr>
7 copyright: Julien Moutinho <julm+symantic-base@sourcephile.fr>
8 license: AGPL-3.0-or-later
9 license-file: LICENSES/AGPL-3.0-or-later.txt
10
11 -- PVP: +-+------- breaking API changes
12 -- | | +----- non-breaking API additions
13 -- | | | +--- code changes with no API change
14 version: 0.5.1.20240520
15 stability: experimental
16 category: Data Structures
17 synopsis:
18 Basic symantic combinators for Embedded Domain-Specific Languages (EDSL)
19
20 description:
21 This is a work-in-progress collection of basic tagless-final combinators,
22 along with some experimental utilities to exploit them.
23
24 build-type: Simple
25 tested-with: GHC ==8.10.4
26 extra-doc-files: ChangeLog.md
27 extra-source-files:
28 .envrc
29 cabal.project
30
31 extra-tmp-files:
32
33 source-repository head
34 type: git
35 location: git://git.sourcephile.fr/haskell/symantic-base
36
37 common boilerplate
38 default-language: Haskell2010
39 default-extensions:
40 DefaultSignatures
41 FlexibleContexts
42 FlexibleInstances
43 GeneralizedNewtypeDeriving
44 ImportQualifiedPost
45 LambdaCase
46 MultiParamTypeClasses
47 NamedFieldPuns
48 NoImplicitPrelude
49 RecordWildCards
50 ScopedTypeVariables
51 TupleSections
52 TypeApplications
53 TypeFamilies
54 TypeOperators
55
56 ghc-options:
57 -Wall -Wincomplete-uni-patterns -Wincomplete-record-updates
58 -Wpartial-fields -fprint-potential-instances
59
60 common library-deps
61 build-depends:
62 , base >=4.10 && <5
63 , containers
64 , hashable
65 , template-haskell
66 , transformers
67 , unordered-containers
68
69 library
70 import: boilerplate, library-deps
71 hs-source-dirs: src
72 exposed-modules:
73 Symantic
74 Symantic.Semantics
75 Symantic.Semantics.Data
76 Symantic.Semantics.Forall
77 Symantic.Semantics.Identity
78 Symantic.Semantics.LetInserter
79 Symantic.Semantics.Reader
80 Symantic.Semantics.SharingObserver
81 Symantic.Semantics.Viewer
82 Symantic.Semantics.Viewer.Fixity
83 Symantic.Syntaxes
84 Symantic.Syntaxes.Classes
85 Symantic.Syntaxes.CurryN
86 Symantic.Syntaxes.Derive
87 Symantic.Syntaxes.EithersOfTuples
88 Symantic.Syntaxes.Reify
89 Symantic.Syntaxes.TuplesOfFunctions
90
91 test-suite symantic-base-tests
92 import: boilerplate, library-deps
93 type: exitcode-stdio-1.0
94 hs-source-dirs: tests
95 main-is: Spec.hs
96 build-tool-depends: sydtest-discover:sydtest-discover
97 ghc-options: -threaded -rtsopts -with-rtsopts=-N
98
99 -- ghc-prof-options: -fexternal-interpreter
100 -- ghc-options: -ddump-splices -ddump-to-file
101 other-modules:
102 Paths_symantic_base
103 Symantic.Semantics.LetInserterSpec
104 Symantic.Syntaxes.Extras
105
106 autogen-modules: Paths_symantic_base
107 build-depends:
108 , genvalidity
109 , genvalidity-containers
110 , genvalidity-sydtest
111 , genvalidity-text
112 , genvalidity-time
113 , relude
114 , sydtest
115 , symantic-base
116 , validity
117 , validity-containers
118 , validity-text