; 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