random: minor speedup (random-bits).

db4
John Benediktsson 2013-02-27 15:26:56 -08:00
parent 29b8c4b993
commit 927414c6c5
1 changed files with 1 additions and 1 deletions

View File

@ -53,7 +53,7 @@ TYPED: random-bytes ( n: fixnum -- byte-array: byte-array )
:: (random-bits) ( n bits obj -- n' )
obj random-32* 32 bits 32 - [ dup 0 > ] [
[ 32 shift obj random-32* + ] [ 32 + ] [ 32 - ] tri*
] while drop [ n * ] [ 2^ /i ] bi* ; inline
] while drop [ n * ] [ neg shift ] bi* ; inline
: (random-integer) ( n obj -- n' )
[ dup #bits ] dip (random-bits) ;