1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
# 0.1.0.4
- Add TestU01 test-suite
# 0.1.0.3
- Fix oops bugs in 0.1.0.2
- It's lowercase `windows.h`.
I blame Microsoft docs for using capital case `Windows.h` in the docs.
https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-getprocessid
- accidental `shiftL` vs `shiftR` mixup for 32-bit generator initialization.
Doesn't affect Linux.
# 0.1.0.2
- Drop `time` dependency in favour of handcoded initialization
- On Unix platforms we use `/dev/urandom` if it exists,
otherwise use `gettimeofday`, `clock` and `getpid`.
- On Windows we use `GetCurrentProcessID`, `GetCurrentThreadId()`,
`GetTickCount`, `GetSystemTime` and `QueryPerformanceCounter`.
- On GHCJS use `Math.random()`
- Using `time` is a fallback option (e.g. for Hugs).
# 0.1.0.1
- Add `INLINEABLE` pragmas to `bitmaskWithRejection*` functions
- Support GHC-9.0
# 0.1
- Drop `random` dependency unconditionally.
https://github.com/phadej/splitmix/issues/34
# 0.0.5
- Add `nextInteger`
- Use smaller range in `bitmaskWithRejection32` and `64`,
when upper bound is 2^n - 1.
This changes generated values when they were on the boundary.
# 0.0.4
- Add `bitmaskWithRejection32'` and `bitmaskWithRejection64'`
which generate numbers in closed range `[0, n]`.
Unticked variants generate in closed-open range `[0, n)`.
# 0.0.3
- Add `System.Random.SplitMix32` module
- Add `bitmaskWithRejection32` and `bitmaskWithRejection64` functions
- Add `nextWord32`, `nextTwoWord32` and `nextFloat`
- Add `random` flag, dropping dependency on `random`
(breaks things, e.g. `QuickCheck`, when disabled).
# 0.0.2
- Support back to GHC-7.0
- Add `Read SMGen` instance
# 0.0.1
- Add `NFData SMGen` instance
- Fix a bug. http://www.pcg-random.org/posts/bugs-in-splitmix.html
The generated numbers will be different for the same seeds!
|