on master help sign in
Keep benchmark changes separate
5248864JoeyEremondi
bench/src/IfBench.elm+54−100
@@ -3,116 +3,70 @@ module IfBench where
3tailRecursiveIfFn : Int -> Float
3tailRecursiveIfFn : Int -> Float
4tailRecursiveIfFn i =
4tailRecursiveIfFn i =
5 if
5 if
6− i < 0 ->
6+ | i < 0 ->
7− then
8− 10.0
7+ 10.0
9− else if
10− i == 0 ->
8+ | i == 0 ->
11− then
12− 20.0
9+ 20.0
13− else if
14− i > 0 && i < 10 ->
10+ | i > 0 && i < 10 ->
15− then
16− 30.0
11+ 30.0
17− else
12+ | otherwise ->
18 tailRecursiveIfFn (i - (1 + (i % 5 ) ) )
13 tailRecursiveIfFn (i - (1 + (i % 5 ) ) )
19
14
20
15
21manyConditionFunction i =
16manyConditionFunction i =
22 if
17 if
23− i <= 0
18+ | i <= 0 ->
24− then
25− 30.0 + (toFloat i)
19+ 30.0 + (toFloat i)
26− else if
27− i > 100 && (i * i) % 20 == 7
20+ | i > 100 && (i * i) % 20 == 7 ->
28− then
29− 24.3 + (toFloat i)
21+ 24.3 + (toFloat i)
30− else if
31− i > 100 && (i % 3 == 1)
22+ | i > 100 && (i % 3 == 1) ->
32− then
33− 3.33 + (toFloat i)
23+ 3.33 + (toFloat i)
34− else if
35− (i == 152)
24+ | (i == 152) ->
36− then
37− 29.0 + (toFloat i)
25+ 29.0 + (toFloat i)
38− else if
39− (i + (i*i) > 200 && (i + (i*i) < 300)) ->
26+ | (i + (i*i) > 200 && (i + (i*i) < 300)) ->
40 32.9 + (toFloat i)
27 32.9 + (toFloat i)
41− else if
42− i == 99
28+ | i == 99 ->
43− then
44− 93.0 + (toFloat i)
29+ 93.0 + (toFloat i)
45− else if
46− (i*i % 17 == 13 )
30+ | (i*i % 17 == 13 ) ->
47− then
48− 9.0 + (toFloat i)
31+ 9.0 + (toFloat i)
49− else if
50− (i == 101)
32+ | (i == 101) ->
51− then
52− 39.0 + (toFloat i)
33+ 39.0 + (toFloat i)
53− else if
54− (i == 102)
34+ | (i == 102) ->
55− then
56− 38.0 + (toFloat i)
35+ 38.0 + (toFloat i)
57− else if
58− (i == 103)
36+ | (i == 103) ->
59− then
60− 49.0 + (toFloat i)
37+ 49.0 + (toFloat i)
61− else if
62− (i == 104)
38+ | (i == 104) ->
63− then
64− 59.0 + (toFloat i)
39+ 59.0 + (toFloat i)
65− else if
66− (i == 105)
40+ | (i == 105) ->
67− then
68− 69.0 + (toFloat i)
41+ 69.0 + (toFloat i)
69− else if
70− (i == 106)
42+ | (i == 106) ->
71− then
72− 39.0 + (toFloat i)
43+ 39.0 + (toFloat i)
73− else if
74− (i == 107)
44+ | (i == 107) ->
75− then
76− 38.0 + (toFloat i)
45+ 38.0 + (toFloat i)
77− else if
78− (i == 108)
46+ | (i == 108) ->
79− then
80− 49.0 + (toFloat i)
47+ 49.0 + (toFloat i)
81− else if
82− (i == 109)
48+ | (i == 109) ->
83− then
84− 59.0 + (toFloat i)
49+ 59.0 + (toFloat i)
85− else if
86− (i == 110)
50+ | (i == 110) ->
87− then
88− 69.0 + (toFloat i)
51+ 69.0 + (toFloat i)
89− else if
90− (i == 111)
52+ | (i == 111) ->
91− then
92− 39.0 + (toFloat i)
53+ 39.0 + (toFloat i)
93− else if
94− (i == 115)
54+ | (i == 115) ->
95− then
96− 69.0 + (toFloat i)
55+ 69.0 + (toFloat i)
97− else
56+ | otherwise ->
98− toFloat i
57+ toFloat i
99
58
100
59
101fewConditionFunction i =
60fewConditionFunction i =
102 if
61 if
103− i <= 0
62+ | i <= 0 ->
104− then
105− 30.0 + (toFloat i)
63+ 30.0 + (toFloat i)
106− else if
107− (i == 104)
64+ | (i == 104) ->
108− then
109− 59.0 + (toFloat i)
65+ 59.0 + (toFloat i)
110− else if
111− (i == 105)
66+ | (i == 105) ->
112− then
113− 69.0 + (toFloat i)
67+ 69.0 + (toFloat i)
114− else
68+ | otherwise ->
115− toFloat i
69+ toFloat i
116
70
117
71
118tailRecSum intList =
72tailRecSum intList =