Skip to content

Commit 413a953

Browse files
committed
Revert "Hexadecimal: Add benchmarks for signed and unsigned numbers"
This reverts commit b98e02c. # Conflicts: # bench/BenchHexadecimal.hs
1 parent 7b3089f commit 413a953

File tree

1 file changed

+11
-19
lines changed

1 file changed

+11
-19
lines changed

bench/BenchHexadecimal.hs

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -21,50 +21,42 @@ import qualified TextBuilder
2121
word :: Word
2222
word = 123456789123456789
2323

24-
benchLazyBuilder Word T.Text
24+
benchLazyBuilder Int T.Text
2525
benchLazyBuilder = toStrict . toLazyText . go mempty
2626
where
2727
go !acc 0 = acc
28-
go !acc n = let i = n * word in go (hexadecimal i <> (acc <> hexadecimal i)) (n - 1)
28+
go !acc n = let i = fromIntegral n * word in go (hexadecimal i <> (acc <> hexadecimal i)) (n - 1)
2929

30-
benchLazyBuilderBS Word B.ByteString
30+
benchLazyBuilderBS Int B.ByteString
3131
benchLazyBuilderBS = B.toStrict . B.toLazyByteString . go mempty
3232
where
3333
go !acc 0 = acc
34-
go !acc n = go (B.wordHex n <> (acc <> B.wordHex n)) (n - 1)
34+
go !acc n = go (B.wordHex (fromIntegral n) <> (acc <> B.wordHex (fromIntegral n))) (n - 1)
3535

3636
#ifdef MIN_VERSION_text_builder
37-
benchStrictBuilder Word T.Text
37+
benchStrictBuilder Int T.Text
3838
benchStrictBuilder = TextBuilder.toText . go mempty
3939
where
4040
go !acc 0 = acc
41-
go !acc n = let i = n * word in go (TextBuilder.hexadecimal i <> (acc <> TextBuilder.hexadecimal i)) (n - 1)
41+
go !acc n = let i = fromIntegral n * word in go (TextBuilder.hexadecimal i <> (acc <> TextBuilder.hexadecimal i)) (n - 1)
4242
#endif
4343

44-
benchLinearBuilderWord Word T.Text
45-
benchLinearBuilderWord m = runBuffer (\b go b m)
46-
where
47-
go Buffer Word Buffer
48-
go !acc 0 = acc
49-
go !acc n = let i = n * word in go (i &<| (acc |>& i)) (n - 1)
50-
51-
benchLinearBuilderInt Word T.Text
52-
benchLinearBuilderInt m = runBuffer (\b go b (fromIntegral m))
44+
benchLinearBuilder Int T.Text
45+
benchLinearBuilder m = runBuffer (\b go b m)
5346
where
5447
go Buffer Int Buffer
5548
go !acc 0 = acc
56-
go !acc n = let i = n * fromIntegral word in go (i &<| (acc |>& i)) (n - 1)
49+
go !acc n = let i = fromIntegral n * word in go (i &<| (acc |>& i)) (n - 1)
5750

5851
benchHexadecimal Benchmark
5952
benchHexadecimal = bgroup "Hexadecimal" $ map mkGroup [1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6]
6053

61-
mkGroup :: Word Benchmark
54+
mkGroup :: Int Benchmark
6255
mkGroup n = bgroup (show n)
6356
[ bench "Data.Text.Lazy.Builder" $ nf benchLazyBuilder n
6457
, bench "Data.ByteString.Builder" $ nf benchLazyBuilderBS n
6558
#ifdef MIN_VERSION_text_builder
6659
, bench "TextBuilder" $ nf benchStrictBuilder n
6760
#endif
68-
, bench "Data.Text.Builder.Linear (Word)" $ nf benchLinearBuilderWord n
69-
, bench "Data.Text.Builder.Linear (Int)" $ nf benchLinearBuilderInt n
61+
, bench "Data.Text.Builder.Linear" $ nf benchLinearBuilder n
7062
]

0 commit comments

Comments
 (0)