less-arbitrary: Linear time testing with variant of Arbitrary class that always terminates.

[ bsd3, library, web ] [ Propose Tags ]

Ever found non-terminating Arbitrary instance? Ever wondered what would be a runtime cost of particular Arbitrary instance?

Never let it bother you again: this variant of Arbitrary is automatically generating instances, and allows you to see predictable linear time generators for most types (providing that you have any terminating constructor, that is constructor that does not go deeper into the data structure.)

Usage:

import Test.LessArbitrary

data MyDataType = ...
  deriving (Show, Generic)

instance LessArbitrary MyDataType
instance Arbitrary where
 arbitrary = fasterArbitrary

[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.1.0, 0.1.2.0, 0.1.3.0, 0.1.4.0, 0.1.5.0, 0.1.6.0, 0.1.7.0, 0.1.8.0
Change log CHANGELOG.md
Dependencies base (>=4.5 && <=4.15), containers, email-validate, generic-arbitrary, genvalidity, genvalidity-hspec, genvalidity-property, hashable, hspec, mtl, QuickCheck, random, scientific, text, time, transformers, unordered-containers, validity, vector [details]
License BSD-3-Clause
Author Michał J. Gajda <mjgajda@migamake.com>
Maintainer Michał J. Gajda <mjgajda@migamake.com>
Category Web
Uploaded by MichalGajda at 2020-11-04T14:33:29Z
Distributions
Downloads 1005 total (31 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2020-11-04 [all 1 reports]

Readme for less-arbitrary-0.1.0.2

[back to package description]

To build this you need:

  • pandoc
  • dejavu-sans and Arial fonts installed (the latter from msttcorefonts package or similar)
  • xelatex with standard science article packages
    • easiest to get as MacTeX on Mac
    • apt-get install -y texlive-recommended on Ubuntu
  • Stephen Diehl category theory diagrams:
  • markdown-unlit
  • pandoc-hide-codeblocks