on develop help sign in
Reorganize cabal file; move Pure into the library
c02df29Ryan Trinkle
reflex.cabal+51−53
@@ -16,62 +16,69 @@ bug-reports: https://github.com/reflex-frp/reflex/issues
16library
16library
17 hs-source-dirs: src
17 hs-source-dirs: src
18 build-depends:
18 build-depends:
19+ MemoTrie == 0.6.*,
19 base >= 4.7 && < 4.10,
20 base >= 4.7 && < 4.10,
20 bifunctors >= 5.2 && < 5.5,
21 bifunctors >= 5.2 && < 5.5,
21− dependent-sum == 0.3.*,
22− dependent-map >= 0.2.2 && < 0.3,
23− semigroups >= 0.16 && < 0.19,
24− semigroupoids >= 4.0 && < 6,
25− mtl >= 2.1 && < 2.3,
26 containers == 0.5.*,
22 containers == 0.5.*,
27− these >= 0.4 && < 0.8,
23+ dependent-map >= 0.2.2 && < 0.3,
28− primitive >= 0.5 && < 0.7,
24+ dependent-sum == 0.3.*,
29− template-haskell >= 2.9 && < 2.12,
30− ref-tf == 0.4.*,
31 exception-transformers == 0.4.*,
25 exception-transformers == 0.4.*,
32− transformers >= 0.2,
33− transformers-compat >= 0.3,
34 haskell-src-exts >= 1.16 && < 1.18,
26 haskell-src-exts >= 1.16 && < 1.18,
35 haskell-src-meta == 0.6.*,
27 haskell-src-meta == 0.6.*,
28+ mtl >= 2.1 && < 2.3,
29+ primitive >= 0.5 && < 0.7,
30+ ref-tf == 0.4.*,
31+ semigroupoids >= 4.0 && < 6,
32+ semigroups >= 0.16 && < 0.19,
33+ stm == 2.4.*,
36 syb >= 0.5 && < 0.7,
34 syb >= 0.5 && < 0.7,
37− stm == 2.4.*
35+ template-haskell >= 2.9 && < 2.12,
36+ these >= 0.4 && < 0.8,
37+ transformers >= 0.2,
38+ transformers-compat >= 0.3
38
39
39 exposed-modules:
40 exposed-modules:
41+ Data.Functor.Misc,
42+ Data.WeakBag,
40 Reflex,
43 Reflex,
41− Reflex.Spider,
42− Reflex.Spider.Internal,
43 Reflex.Class,
44 Reflex.Class,
44 Reflex.Dynamic,
45 Reflex.Dynamic,
45− Reflex.Dynamic.Uniq,
46 Reflex.Dynamic.TH,
46 Reflex.Dynamic.TH,
47+ Reflex.Dynamic.Uniq,
47 Reflex.Host.Class,
48 Reflex.Host.Class,
48− Data.Functor.Misc,
49+ Reflex.Pure,
49− Data.WeakBag
50+ Reflex.Spider,
51+ Reflex.Spider.Internal
50
52
51 other-extensions: TemplateHaskell
53 other-extensions: TemplateHaskell
52 ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2
54 ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2
53 ghc-prof-options: -auto-all
55 ghc-prof-options: -auto-all
54
56
55−
56−test-suite all
57+test-suite semantics
57 type: exitcode-stdio-1.0
58 type: exitcode-stdio-1.0
58− main-is: Reflex/Test/RunAll.hs
59+ main-is: semantics.hs
59− ghc-options: -O2 -Wall -rtsopts
60 hs-source-dirs: test
60 hs-source-dirs: test
61+ ghc-options: -O2 -Wall -rtsopts
61 build-depends:
62 build-depends:
62 base,
63 base,
63− reflex,
64+ bifunctors,
64− ref-tf,
65− mtl,
66 containers,
65 containers,
66+ deepseq >= 1.3 && < 1.5,
67 dependent-map,
67 dependent-map,
68 dependent-sum,
68 dependent-sum,
69+ mtl,
70+ ref-tf,
71+ reflex,
72+ split,
69− transformers >= 0.3,
73+ transformers >= 0.3
70− MemoTrie == 0.6.*,
71− deepseq >= 1.3 && < 1.5,
72− bifunctors,
73− split
74
74
75+test-suite hlint
76+ type: exitcode-stdio-1.0
77+ main-is: hlint.hs
78+ hs-source-dirs: test
79+ build-depends: base, hlint == 1.9.*
80+ if impl(ghcjs)
81+ buildable: False
75
82
76benchmark spider-bench
83benchmark spider-bench
77 type: exitcode-stdio-1.0
84 type: exitcode-stdio-1.0
@@ -80,16 +87,15 @@ benchmark spider-bench
80 ghc-options: -Wall -O2 -rtsopts
87 ghc-options: -Wall -O2 -rtsopts
81 build-depends:
88 build-depends:
82 base,
89 base,
83− dependent-sum,
90+ criterion == 1.1.*,
84− dependent-map,
85− transformers >= 0.3,
86− stm,
87 deepseq >= 1.3 && < 1.5,
91 deepseq >= 1.3 && < 1.5,
92+ dependent-map,
93+ dependent-sum,
88 mtl,
94 mtl,
89 primitive,
95 primitive,
90− criterion == 1.1.*,
91− reflex
96+ reflex,
92−
97+ stm,
98+ transformers >= 0.3
93
99
94benchmark saulzar-bench
100benchmark saulzar-bench
95 type: exitcode-stdio-1.0
101 type: exitcode-stdio-1.0
@@ -101,28 +107,20 @@ benchmark saulzar-bench
101 build-depends:
107 build-depends:
102 base,
108 base,
103 containers == 0.5.*,
109 containers == 0.5.*,
104− ref-tf == 0.4,
110+ criterion == 1.1.*,
105− dependent-sum,
106− dependent-map,
107− transformers >= 0.3,
108− stm,
109 deepseq >= 1.3 && < 1.5,
111 deepseq >= 1.3 && < 1.5,
112+ dependent-map,
113+ dependent-sum,
114+ loch-th,
110 mtl,
115 mtl,
111 primitive,
116 primitive,
112− criterion == 1.1.*,
117+ process,
113− split,
118+ ref-tf == 0.4,
114 reflex,
119 reflex,
120+ split,
121+ stm,
115 time,
122 time,
116− loch-th,
123+ transformers >= 0.3
117− process
118−
119−test-suite hlint
120− build-depends: base, hlint == 1.9.*
121− hs-source-dirs: test
122− main-is: hlint.hs
123− type: exitcode-stdio-1.0
124− if impl(ghcjs)
125− buildable: False
126
124
127source-repository head
125source-repository head
128 type: git
126 type: git
test/Reflex/Pure.hs → src/Reflex/Pure.hsrenamed+8−5
@@ -1,8 +1,4 @@
1−-- | This module provides a pure implementation of Reflex, which is intended to
1+{-# LANGUAGE CPP #-}
2−-- serve as a reference for the semantics of the Reflex class. All
3−-- implementations of Reflex should produce the same results as this
4−-- implementation, although performance and laziness/strictness may differ.
5−
6{-# LANGUAGE EmptyDataDecls #-}
2{-# LANGUAGE EmptyDataDecls #-}
7{-# LANGUAGE FlexibleInstances #-}
3{-# LANGUAGE FlexibleInstances #-}
8{-# LANGUAGE InstanceSigs #-}
4{-# LANGUAGE InstanceSigs #-}
@@ -15,9 +11,16 @@
15-- * MonadHold (Pure t) ((->) t)
11-- * MonadHold (Pure t) ((->) t)
16{-# OPTIONS_GHC -fno-warn-orphans #-}
12{-# OPTIONS_GHC -fno-warn-orphans #-}
17
13
14+-- | This module provides a pure implementation of Reflex, which is intended to
15+-- serve as a reference for the semantics of the Reflex class. All
16+-- implementations of Reflex should produce the same results as this
17+-- implementation, although performance and laziness/strictness may differ.
18module Reflex.Pure where
18module Reflex.Pure where
19
19
20+#if !MIN_VERSION_base(4,8,0)
20import Control.Applicative -- Necessary for GHC 7.8
21import Control.Applicative -- Necessary for GHC 7.8
22+#endif
23+
21import Control.Monad
24import Control.Monad
22import Data.Dependent.Map (DMap, GCompare)
25import Data.Dependent.Map (DMap, GCompare)
23import qualified Data.Dependent.Map as DMap
26import qualified Data.Dependent.Map as DMap
test/Reflex/Test/RunAll.hs → test/semantics.hsrenamed

The content is the same.