@@ -3,70 +3,116 @@ module IfBench where
3tailRecursiveIfFn : Int -> Float
3tailRecursiveIfFn : Int -> Float
4tailRecursiveIfFn i =
4tailRecursiveIfFn i =
8− | i == 0 ->
10+ i == 0 ->
10− | i > 0 && i < 10 ->
14+ i > 0 && i < 10 ->
12− | otherwise ->
17+ else
13 tailRecursiveIfFn (i - (1 + (i % 5 ) ) )
18 tailRecursiveIfFn (i - (1 + (i % 5 ) ) )
16manyConditionFunction i =
21manyConditionFunction i =
18− | i <= 0 ->
23+ i <= 0
19− 30.0 + (toFloat i)
25+ 30.0 + (toFloat i)
20− | i > 100 && (i * i) % 20 == 7 ->
27+ i > 100 && (i * i) % 20 == 7
21− 24.3 + (toFloat i)
29+ 24.3 + (toFloat i)
22− | i > 100 && (i % 3 == 1) ->
31+ i > 100 && (i % 3 == 1)
23− 3.33 + (toFloat i)
33+ 3.33 + (toFloat i)
24− | (i == 152) ->
35+ (i == 152)
25− 29.0 + (toFloat i)
37+ 29.0 + (toFloat i)
26− | (i + (i*i) > 200 && (i + (i*i) < 300)) ->
39+ (i + (i*i) > 200 && (i + (i*i) < 300)) ->
27 32.9 + (toFloat i)
40 32.9 + (toFloat i)
28− | i == 99 ->
42+ i == 99
29− 93.0 + (toFloat i)
44+ 93.0 + (toFloat i)
30− | (i*i % 17 == 13 ) ->
46+ (i*i % 17 == 13 )
31− 9.0 + (toFloat i)
48+ 9.0 + (toFloat i)
32− | (i == 101) ->
50+ (i == 101)
33− 39.0 + (toFloat i)
52+ 39.0 + (toFloat i)
34− | (i == 102) ->
54+ (i == 102)
35− 38.0 + (toFloat i)
56+ 38.0 + (toFloat i)
36− | (i == 103) ->
58+ (i == 103)
37− 49.0 + (toFloat i)
60+ 49.0 + (toFloat i)
38− | (i == 104) ->
62+ (i == 104)
39− 59.0 + (toFloat i)
64+ 59.0 + (toFloat i)
40− | (i == 105) ->
66+ (i == 105)
41− 69.0 + (toFloat i)
68+ 69.0 + (toFloat i)
42− | (i == 106) ->
70+ (i == 106)
43− 39.0 + (toFloat i)
72+ 39.0 + (toFloat i)
44− | (i == 107) ->
74+ (i == 107)
45− 38.0 + (toFloat i)
76+ 38.0 + (toFloat i)
46− | (i == 108) ->
78+ (i == 108)
47− 49.0 + (toFloat i)
80+ 49.0 + (toFloat i)
48− | (i == 109) ->
82+ (i == 109)
49− 59.0 + (toFloat i)
84+ 59.0 + (toFloat i)
50− | (i == 110) ->
86+ (i == 110)
51− 69.0 + (toFloat i)
88+ 69.0 + (toFloat i)
52− | (i == 111) ->
90+ (i == 111)
53− 39.0 + (toFloat i)
92+ 39.0 + (toFloat i)
54− | (i == 115) ->
94+ (i == 115)
55− 69.0 + (toFloat i)
96+ 69.0 + (toFloat i)
56− | otherwise ->
97+ else
57− toFloat i
98+ toFloat i
60fewConditionFunction i =
101fewConditionFunction i =
62− | i <= 0 ->
103+ i <= 0
63− 30.0 + (toFloat i)
105+ 30.0 + (toFloat i)
64− | (i == 104) ->
107+ (i == 104)
65− 59.0 + (toFloat i)
109+ 59.0 + (toFloat i)
66− | (i == 105) ->
111+ (i == 105)
67− 69.0 + (toFloat i)
113+ 69.0 + (toFloat i)
68− | otherwise ->
114+ else
69− toFloat i
115+ toFloat i
72tailRecSum intList =
118tailRecSum intList =