kempe-0.2.0.0: examples/splitmix.kmp
; from here: http://prng.di.unimi.it/splitmix64.c
; given a seed, return a random value and the new seed
next : Word -- Word Word
=: [ 0x9e3779b97f4a7c15u +~ dup
dup 30u >>~ xoru 0xbf58476d1ce4e5b9u *~
dup 27u >>~ xoru 0x94d049bb133111ebu *~
dup 31u >>~ xoru
]
%foreign kabi next