packages feed

random-bytestring-0.1.2: random-bytestring.cabal

Name: random-bytestring
Version: 0.1.2
Synopsis: Efficient generation of random bytestrings
Description:
    Efficient generation of random bytestrings. The implementation
    populates uninitialized memory with uniformily distributed random
    64 bit words (and 8 bit words for remaining bytes at the end of
    the bytestring).
    .
    Random words are generated using the PRNG from
    the [mwc-random](https://hackage.haskell.org/package/mwc-random) package
    or the [pcg-random](https://hackage.haskell.org/package/pcg-random)
    package. It is also possible to use a custom PRNG by providing
    an instance for the 'RandomWords' type class and using the function
    'generate' from the module "Data.ByteString.Random.Internal".
    .
    The generated byte strings are suitable for statistical
    applications. They are /not/ suitable for cryptographic
    applications.
    .
    ![benchmarks](https://hackage.haskell.org/package/random-bytestring-0.1.2/src/benchmarks.png)
    .
    ![detailed benchmarks](https://hackage.haskell.org/package/random-bytestring-0.1.2/src/benchmarks-details.png)

Homepage: https://www.github.com/larskuhtz/random-bytestring
License: MIT
Author: Lars Kuhtz <lakuhtz@gmail.com>
Maintainer: Lars Kuhtz <lakuhtz@gmail.com>
Copyright: Copyright (c) 2017 Lars Kuhtz <lakuhtz@gmail.com>
Category: System
Build-type: Simple
Cabal-version: >= 1.18
Tested-With: GHC == 7.8.4, GHC == 7.10.2, GHC == 8.0.2, GHC == 8.2.1
License-file: LICENSE

extra-doc-files:
    README.md,
    CHANGELOG.md
    benchmarks.png
    benchmarks-details.png

source-repository head
    type: git
    location: https://www.github.com/larskuhtz/random-bytestring

Library
    default-language: Haskell2010
    hs-source-dirs: src

    exposed-modules:
        Data.ByteString.Random
        Data.ByteString.Random.Internal
        Data.ByteString.Random.PCG
        Data.ByteString.Random.MWC

    build-depends:
        base >= 4.7 && < 4.11,
        bytestring >= 0.10,
        mwc-random >= 0.13,
        pcg-random >= 0.1

    if impl(ghc < 7.10)
        build-depends:
            nats >= 1.1

    ghc-options: -Wall -O2

Benchmark benchmark
    default-language: Haskell2010
    type: exitcode-stdio-1.0
    main-is: benchmark.hs
    hs-source-dirs: benchmark
    ghc-options: -Wall -O2 -threaded -with-rtsopts=-N -rtsopts
    build-depends:
        random-bytestring,
        async >= 2.1,
        base >= 4.7 && < 4.11,
        bytestring >= 0.10,
        criterion >= 1.1,
        entropy >= 0.3,
        ghc-prim >= 0.3,
        mwc-random >= 0.13,
        pcg-random >= 0.1,
        primitive >= 0.6,
        random >= 1.1,
        cryptonite >= 0.24

    if impl(ghc < 7.10)
        build-depends:
            nats >= 1.1

    if impl(ghc < 7.10)
        buildable: False

    other-modules:
        Benchmarks
        Implementations

Benchmark benchmark-compare
    default-language: Haskell2010
    type: exitcode-stdio-1.0
    main-is: benchmark-compare.hs
    hs-source-dirs: benchmark
    ghc-options: -Wall -O2 -threaded -with-rtsopts=-N -rtsopts
    build-depends:
        random-bytestring,
        async >= 2.1,
        base >= 4.7 && < 4.11,
        bytestring >= 0.10,
        criterion >= 1.1,
        entropy >= 0.3,
        ghc-prim >= 0.3,
        mwc-random >= 0.13,
        pcg-random >= 0.1,
        primitive >= 0.6,
        random >= 1.1,
        cryptonite >= 0.24

    if impl(ghc < 7.10)
        build-depends:
            nats >= 1.1

    if impl(ghc < 7.10)
        buildable: False

    other-modules:
        Benchmarks,
        Implementations

Benchmark eventlog-compare
    default-language: Haskell2010
    type: exitcode-stdio-1.0
    main-is: eventlog-compare.hs
    hs-source-dirs: benchmark
    ghc-options: -Wall -O2 -threaded -with-rtsopts=-N -rtsopts -eventlog
    build-depends:
        random-bytestring,
        async >= 2.1,
        base >= 4.7 && < 4.11,
        bytestring >= 0.10,
        criterion >= 1.1,
        entropy >= 0.3,
        ghc-prim >= 0.3,
        mwc-random >= 0.13,
        pcg-random >= 0.1,
        primitive >= 0.6,
        random >= 1.1,
        cryptonite >= 0.24

    if impl(ghc < 7.10)
        build-depends:
            nats >= 1.1

    if impl(ghc < 7.10)
        buildable: False

    other-modules:
        Benchmarks,
        Implementations