2{-# LANGUAGE FlexibleContexts #-}
7import qualified Effectful.Dynamic.Bench as EffectfulDynamic
8import qualified Effectful.Static.Bench as EffectfulStatic
9import qualified ExtEff.Bench as ExtEff
10import qualified Freer.Bench as Freer
11import qualified Fused.Bench as Fused
12import Gauge (bench, bgroup, nf, nfAppIO)
13import Gauge.Main (defaultMain)
14import qualified MTL.Bench as MTL
15import qualified Poly.Bench as Poly
16import qualified Shallow.Bench as Shallow
27 putStrLn "*** Time benchmarks ***"
33 [ bench "fused-effects" (nf Fused.countDownBench runs),
34 bench "mtl" (nf MTL.countDownBench runs),
35 bench "polysemy" (nf Poly.countDownBench runs),
36 bench "freer-simple" (nf Freer.countDownBench runs),
37 bench "extensible-effects" (nf ExtEff.countDownBench runs),
38 bench "shallow" (nf Shallow.countDownBench runs),
39 bench "effectful - static" (nf EffectfulStatic.countDownBench runs),
40 bench "effectful - dynamic" (nf EffectfulDynamic.countDownBench runs)
44 [ bench "fused-effects" (nf Fused.countDownExcBench runs),
45 bench "mtl" (nf MTL.countDownExcBench runs),
46 bench "polysemy" (nf Poly.countDownExcBench runs),
47 bench "freer-simple" (nf Freer.countDownExcBench runs),
48 bench "extensible-effects" (nf ExtEff.countDownExcBench runs),
49 bench "shallow" (nf Shallow.countDownExcBench runs),
50 bench "effectful - static" (nf EffectfulStatic.countDownExcBench runs),
51 bench "effectful - dynamic" (nf EffectfulDynamic.countDownExcBench runs)
56 [ bench "fused-effects" (nfAppIO Fused.httpBench runs),
57 bench "polysemy" (nfAppIO Poly.httpBench runs),
58 bench "extensible-effects" (nfAppIO ExtEff.httpBench runs),
59 bench "Deep embedding" (nfAppIO MTL.httpBench runs),
60 bench "Shallow embedding" (nfAppIO Shallow.httpBench runs),
61 bench "freer-simple" (nfAppIO Freer.httpBench runs),
62 bench "effectful - static" (nfAppIO EffectfulStatic.httpBench runs),
63 bench "effectful - dynamic" (nfAppIO EffectfulDynamic.httpBench runs)
67 putStrLn "*** Space benchmarks (these will take some time to run) ***"
69 Weigh.wgroup "Countdown" $
71 [ Weigh.func "fused-effects" Fused.countDownBench wruns,
72 Weigh.func "mtl" MTL.countDownBench wruns,
73 Weigh.func "polysemy" Poly.countDownBench wruns,
74 Weigh.func "freer-simple" Freer.countDownBench wruns,
75 Weigh.func "extensible-effects" ExtEff.countDownBench wruns,
76 Weigh.func "shallow" Shallow.countDownBench wruns,
77 Weigh.func "effectful - static" EffectfulStatic.countDownBench runs,
78 Weigh.func "effectful - dynamic" EffectfulDynamic.countDownBench runs
80 Weigh.wgroup "Countdown + exc" $
82 [ Weigh.func "fused-effects" Fused.countDownExcBench wruns,
83 Weigh.func "mtl" MTL.countDownExcBench wruns,
84 Weigh.func "polysemy" Poly.countDownExcBench wruns,
85 Weigh.func "freer-simple" Freer.countDownExcBench wruns,
86 Weigh.func "extensible-effects" ExtEff.countDownExcBench wruns,
87 Weigh.func "shallow" Shallow.countDownExcBench wruns,
88 Weigh.func "effectful - static" EffectfulStatic.countDownExcBench runs,
89 Weigh.func "effectful - dynamic" EffectfulDynamic.countDownExcBench runs
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list