On Mon, 2011-10-03 at 22:59 -0700, Johan Tibell wrote: > Proposal > ======== > > Step 1. Add basic support for building simple benchmark suites e.g. modelled > after test suite sections: > > Name: foo > Version: 1.0 > License: BSD3 > Cabal-Version: >= 1.9.2 > Build-Type: Simple > > Benchmark bench-foo > type: stdio-1.0 > main-is: bench-foo.hs > build-depends: base > > This doesn't add much on top of normal executable sections, except that it > tells Cabal that this isn't an executable it should build by default or > install.
Just to point out that the closest workaround at the moment is to add an executable but to mark it as not buildable by default. > Step 2. Add a detailed benchmark interface that allows the benchmark to > associate a real valued *measure* (optionally with upper and lower bounds) > with a benchmark name. Benchmark naming would work like test naming (e.g. > group/subgroup/name). This would allow us to track performance over time. > > Step 2 needs to be fleshed out some more, but I think we can get quite a lot > of bang-for-the-buck with step 1. In general, yes I think benchmarking is a sensible follow-on from test suites. We can follow the same approach of specifying a protocol so that we can add more sophisticated interfaces later as we gain experience wit them. Duncan _______________________________________________ cabal-devel mailing list cabal-devel@haskell.org http://www.haskell.org/mailman/listinfo/cabal-devel