@@ -14,7 +14,7 @@ main = do
14
14
s_odd = S. fromAscList elems_odd :: S. Set Int
15
15
strings_s = S. fromList strings
16
16
evaluate $ rnf [s, s_even, s_odd]
17
- evaluate $ rnf elems_rev
17
+ evaluate $ rnf [ elems_rev, elems_asc, elems_desc]
18
18
defaultMain
19
19
[ bench " member" $ whnf (member elems) s
20
20
, bench " insert" $ whnf (ins elems) S. empty
@@ -33,9 +33,10 @@ main = do
33
33
, bench " intersection" $ whnf (S. intersection s) s_even
34
34
, bench " fromList" $ whnf S. fromList elems
35
35
, bench " fromList-desc" $ whnf S. fromList (reverse elems)
36
- , bench " fromAscList" $ whnf S. fromAscList elems
36
+ , bench " fromAscList" $ whnf S. fromAscList elems_asc
37
37
, bench " fromDistinctAscList" $ whnf S. fromDistinctAscList elems
38
38
, bench " fromDistinctAscList:fusion" $ whnf (\ n -> S. fromDistinctAscList [1 .. n]) bound
39
+ , bench " fromDescList" $ whnf S. fromDescList elems_desc
39
40
, bench " fromDistinctDescList" $ whnf S. fromDistinctDescList elems_rev
40
41
, bench " fromDistinctDescList:fusion" $ whnf (\ n -> S. fromDistinctDescList [n,n- 1 .. 1 ]) bound
41
42
, bench " disjoint:false" $ whnf (S. disjoint s) s_even
@@ -62,6 +63,8 @@ main = do
62
63
elems_even = [2 ,4 .. bound]
63
64
elems_odd = [1 ,3 .. bound]
64
65
elems_rev = reverse elems
66
+ elems_asc = map (`div` 2 ) [1 .. bound]
67
+ elems_desc = map (`div` 2 ) [bound,bound- 1 .. 1 ]
65
68
strings = map show elems
66
69
67
70
member :: [Int ] -> S. Set Int -> Int
0 commit comments