on 1.0.1.0-r1 help sign in
30 lines 761 B history raw
1{-# LANGUAGE PackageImports #-}
2{-# LANGUAGE ScopedTypeVariables #-}
4module Main (main) where
6import Prelude ()
7import Prelude.Compat
9import Compare.BufferBuilder ()
10import Compare.JsonBuilder ()
11import Criterion.Main
12import Data.BufferBuilder.Json
13import Data.Json.Builder
14import Twitter
15import Twitter.Manual ()
16import Typed.Common
17import qualified "aeson-benchmarks" Data.Aeson as Aeson
18import qualified Compare.JsonBench as JsonBench
20main :: IO ()
21main =
22 defaultMain [
23 env (load "json-data/twitter100.json") $ \ ~(twtr :: Result) ->
24 bgroup "twitter" [
25 bench "aeson" $ nf Aeson.encode twtr
26 , bench "buffer-builder" $ nf encodeJson twtr
27 , bench "json-builder" $ nf toJsonLBS twtr
28 ]
29 , JsonBench.benchmarks
30 ]