import Criterion.Main import Compress.LengthDistancePairs import qualified Data.ByteString as BS import qualified Compress.Arithmetic as A main = do testData <- BS.unpack . BS.take 10000 <$> (BS.readFile "pg64317.txt") defaultMain [ bgroup "encode" [ bench "length distance pair" $ nf (encode :: [Word8] -> [LengthDistancePair Word32]) testData ], bgroup "arithmetic coding" [ bench "pg64317.txt" $ nf A.compress testData ] ]