hsbencher- Launch and gather data from Haskell and non-Haskell benchmarks.

Safe HaskellNone




Convenience module that reexports the necessary bits.


The main entrypoints for building new benchmark suites.

defaultMainModifyConfig :: (Config -> Config) -> IO () Source

An even more flexible version allows the user to install a hook which modifies the configuration just before bencharking begins. All trawling of the execution environment (command line args, environment variables) happens BEFORE the user sees the configuration.

This function doesn't take a benchmark list separately, because that simply corresponds to the benchlist field of the output Config.

addPlugin :: Plugin p => p -> PlugConf p -> Config -> Config Source

This abstracts over the actions we need to take to properly add an additional plugin to the Config.

addBenchmarks :: [Benchmark DefaultParamMeaning] -> Config -> Config Source

A convenience combinator for composing together with other Config transformers. This one adds benchmarks to whatever is already in the benchlist field.

Command-line configuration

fullUsageInfo :: String Source

Multiple lines of usage info help docs.

All the types necessary for configuration and customization

Don't import the module below directly, but do click on this link to read its documentation.