on develop help sign in
wip
84c1787Ryan Trinkle
default.nix+1−7
@@ -4,7 +4,6 @@
4, monad-control, mtl, primitive, ref-tf, semigroupoids
4, monad-control, mtl, primitive, ref-tf, semigroupoids
5, semigroups, split, stdenv, stm, syb, template-haskell
5, semigroups, split, stdenv, stm, syb, template-haskell
6, these, transformers, transformers-compat, prim-uniq
6, these, transformers, transformers-compat, prim-uniq
7−, ghc_reflex ? null
8}:
7}:
9mkDerivation {
8mkDerivation {
10 pname = "reflex";
9 pname = "reflex";
@@ -16,13 +15,8 @@ mkDerivation {
16 MemoTrie monad-control mtl primitive ref-tf semigroupoids
15 MemoTrie monad-control mtl primitive ref-tf semigroupoids
17 semigroups stm syb template-haskell these transformers
16 semigroups stm syb template-haskell these transformers
18 transformers-compat prim-uniq
17 transformers-compat prim-uniq
19− ];
20− testHaskellDepends = [
21 base bifunctors containers deepseq dependent-map dependent-sum
18 base bifunctors containers deepseq dependent-map dependent-sum
22− hlint mtl ref-tf split transformers
19+ mtl ref-tf split transformers
23− ];
24− buildDepends = [
25− ghc_reflex
26 ];
20 ];
27 homepage = "https://github.com/reflex-frp/reflex";
21 homepage = "https://github.com/reflex-frp/reflex";
28 description = "Higher-order Functional Reactive Programming";
22 description = "Higher-order Functional Reactive Programming";
reflex.cabal+9−11
@@ -23,6 +23,7 @@ library
23 dependent-map >= 0.2.2 && < 0.3,
23 dependent-map >= 0.2.2 && < 0.3,
24 dependent-sum == 0.3.*,
24 dependent-sum == 0.3.*,
25 exception-transformers == 0.4.*,
25 exception-transformers == 0.4.*,
26+ ghc,
26 haskell-src-exts >= 1.16 && < 1.18,
27 haskell-src-exts >= 1.16 && < 1.18,
27 haskell-src-meta == 0.6.*,
28 haskell-src-meta == 0.6.*,
28 lens >= 4.7 && < 5,
29 lens >= 4.7 && < 5,
@@ -50,6 +51,7 @@ library
50 Reflex.Dynamic.Uniq,
51 Reflex.Dynamic.Uniq,
51 Reflex.DynamicWriter,
52 Reflex.DynamicWriter,
52 Reflex.Host.Class,
53 Reflex.Host.Class,
54+ Reflex.Optimizer,
53 Reflex.PerformEvent.Base,
55 Reflex.PerformEvent.Base,
54 Reflex.PerformEvent.Class,
56 Reflex.PerformEvent.Class,
55 Reflex.PostBuild.Class,
57 Reflex.PostBuild.Class,
@@ -57,10 +59,6 @@ library
57 Reflex.Spider,
59 Reflex.Spider,
58 Reflex.Spider.Internal
60 Reflex.Spider.Internal
59
61
60− if !impl(ghcjs)
61− build-depends: ghc
62− exposed-modules: Reflex.Optimizer
63−
64 other-extensions: TemplateHaskell
62 other-extensions: TemplateHaskell
65 ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2
63 ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2
66 ghc-prof-options: -auto-all
64 ghc-prof-options: -auto-all
@@ -83,13 +81,13 @@ test-suite semantics
83 split,
81 split,
84 transformers >= 0.3
82 transformers >= 0.3
85
83
86−test-suite hlint
84+--test-suite hlint
87− type: exitcode-stdio-1.0
85+-- type: exitcode-stdio-1.0
88− main-is: hlint.hs
86+-- main-is: hlint.hs
89− hs-source-dirs: test
87+-- hs-source-dirs: test
90− build-depends: base, hlint == 1.9.*
88+-- build-depends: base, hlint == 1.9.*
91− if impl(ghcjs)
89+-- if impl(ghcjs)
92− buildable: False
90+-- buildable: False
93
91
94benchmark spider-bench
92benchmark spider-bench
95 type: exitcode-stdio-1.0
93 type: exitcode-stdio-1.0
src/Reflex/Optimizer.hs+7−6
@@ -1,8 +1,14 @@
1{-# LANGUAGE CPP #-}
1{-# LANGUAGE CPP #-}
2{-# LANGUAGE LambdaCase #-}
2{-# LANGUAGE LambdaCase #-}
3module Reflex.Optimizer (plugin) where
3module Reflex.Optimizer (plugin) where
4+#ifdef ghcjs_HOST_OS
4
5
5−#ifndef ghcjs_HOST_OS
6+import Plugins
7+
8+plugin :: Plugin
9+plugin = undefined
10+
11+#else
6
12
7import GhcPlugins
13import GhcPlugins
8import Control.Arrow
14import Control.Arrow
@@ -25,9 +31,4 @@ makeInlinable = CoreDoPluginPass "MakeInlinable" $ \modGuts -> do
25 Rec bes -> Rec $ map (first f) bes
31 Rec bes -> Rec $ map (first f) bes
26 return $ modGuts { mg_binds = newBinds }
32 return $ modGuts { mg_binds = newBinds }
27
33
28−#else
29−
30−plugin :: ()
31−plugin = ()
32−
33#endif
34#endif