perfect-vector-shuffle: Library for performing vector shuffles

[ bsd3, library, random, vector ] [ Propose Tags ]

This package contains functions for performing shuffles on mutable and immutable vectors. The shuffles are uniform at random amongst all permuations.

For an example of how to use it:

module Example where

import Data.Vector
import Immutable.Shuffle

myVector :: Vector Int
myVector = fromList [1..10]

shuffleMyVector :: IO (Vector Int)
shuffleMyVector = shuffleM myVector

This gives the following:

> shuffleMyVector
[1,10,4,7,2,3,5,9,8,6]
> shuffleMyVector
[7,4,2,10,9,8,6,5,1,3]
Versions [faq] 0.1.0, 0.1.1
Change log CHANGELOG.md
Dependencies base (>=4.12.0.0 && <4.13), MonadRandom (>=0.5.1.1 && <0.6), primitive (>=0.6.4.0 && <0.7), random (==1.1.*), vector (>=0.12.0 && <0.13) [details]
License BSD-3-Clause
Copyright 2019
Author Callan McGill
Maintainer callan.mcgill@gmail.com
Category Random, Vector
Home page https://github.com/Boarders/perfect-vector-shuffle
Bug tracker https://github.com/Boarders/perfect-vector-shuffle/issues
Source repo head: git clone https://github.com/Boarders/perfect-vector-shuffle
Uploaded by callanmcgill at Thu May 2 19:17:19 UTC 2019
Distributions NixOS:0.1.1
Downloads 121 total (20 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees