Mon, 09 Nov 2026 20:52:50 UTC Log in
High-quality splittable pseudorandom number generator 51.71 KB built 2026-10-14 03:17:23 GMT

Description

This package contains an implementation of a high-quality splittable pseudorandom number generator. The generator is based on a cryptographic hash function built on top of the ThreeFish block cipher. See the paper /Splittable Pseudorandom Number Generators Using Cryptographic Hashing/ by Claessen, Pałka for details and the rationale of the design. The package provides the following: * A splittable PRNG that implements the standard 'System.Random.RandomGen' class. * The generator also implements an alternative version of the 'System.Random.TF.Gen.RandomGen' class (exported from "System.Random.TF.Gen"), which requires the generator to return pseudorandom integers from the full 32-bit range, and contains an n-way split function. * An alternative version of the 'Random' class is provided, which is linked to the new 'RandomGen' class, together with 'Random' instances for some integral types. * Two functions for initialising the generator with a non-deterministic seed: one using the system time, and one using the '/dev/urandom' UNIX special file. The package uses an adapted version of the reference C implementation of ThreeFish from the reference package of the Skein hash function (<https://www.schneier.com/skein.html>), originally written by Doug Whiting. Please note that even though the generator provides very high-quality pseudorandom numbers, it has not been designed with cryptographic applications in mind.

Dependencies

28 total
Requires25
  • libHSarray-0.5.8.0-inplace-ghc9.10.3.so()(64bit)
  • libHSbase-4.20.2.0-inplace-ghc9.10.3.so()(64bit)
  • libHSbytestring-0.12.2.0-inplace-ghc9.10.3.so()(64bit)
  • libHSdeepseq-1.5.0.0-inplace-ghc9.10.3.so()(64bit)
  • libHSghc-bignum-1.3-inplace-ghc9.10.3.so()(64bit)
  • libHSghc-boot-th-9.10.3-inplace-ghc9.10.3.so()(64bit)
  • libHSghc-internal-9.1003.0-inplace-ghc9.10.3.so()(64bit)
  • libHSghc-prim-0.12.0-inplace-ghc9.10.3.so()(64bit)
  • libHSmtl-2.3.1-inplace-ghc9.10.3.so()(64bit)
  • libHSpretty-1.1.3.6-inplace-ghc9.10.3.so()(64bit)
  • libHSprimitive-0.9.1.0-CdaaD38w4qB6rrosjqTSfA-ghc9.10.3.so()(64bit)
  • libHSrandom-1.2.1.3-EAvZpIsCyhJF2FhxAE9Wl-ghc9.10.3.so()(64bit)
  • libHSsplitmix-0.1.3.2-99T4YbtgOkJKPjdjelFKhJ-ghc9.10.3.so()(64bit)
  • libHStemplate-haskell-2.22.0.0-inplace-ghc9.10.3.so()(64bit)
  • libHStime-1.12.2-inplace-ghc9.10.3.so()(64bit)
  • libHStransformers-0.6.1.1-inplace-ghc9.10.3.so()(64bit)
  • libc.so.6()(64bit)
  • libc.so.6(GLIBC_2.27)(64bit)
  • libgmp.so.10()(64bit)
  • libm.so.6()(64bit)
  • rpmlib(CompressedFileNames) <= 3.0.4-1
  • rpmlib(FileDigests) <= 4.6.0-1
  • rpmlib(PayloadFilesHavePrefix) <= 4.0-1
  • rpmlib(PayloadIsZstd) <= 5.4.18-1
  • rtld(GNU_HASH)
Provides3
  • ghc-tf-random = 0.5-54.fc45
  • ghc-tf-random(riscv-64) = 0.5-54.fc45
  • libHStf-random-0.5-Aj2LoGy2P8rKtfxsutW11M-ghc9.10.3.so()(64bit)
ObsoletesNo Obsoletes
ConflictsNo Conflicts
RecommendsNo Recommends
SuggestsNo Suggests
SupplementsNo Supplements
EnhancesNo Enhances

Files

5
Files 1–5 of 5

Component of

buildroots that installed this RPM

No Buildroots