Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,16 @@
|
|||
import Data.Bits
|
||||
|
||||
import Data.Word
|
||||
import Data.List
|
||||
|
||||
next :: Word64 -> (Word64, Word64)
|
||||
next state = f4 $ state + 0x9e3779b97f4a7c15
|
||||
where
|
||||
f1 z = (z `xor` (z `shiftR` 30)) * 0xbf58476d1ce4e5b9
|
||||
f2 z = (z `xor` (z `shiftR` 27)) * 0x94d049bb133111eb
|
||||
f3 z = z `xor` (z `shiftR` 31)
|
||||
f4 s = ((f3 . f2 . f1) s, s)
|
||||
|
||||
randoms = unfoldr (pure . next)
|
||||
|
||||
toFloat n = fromIntegral n / (2^64 - 1)
|
||||
Loading…
Add table
Add a link
Reference in a new issue