From b47a7373213a85d3c36f35590557aeec0e9c386c Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Wed, 27 Feb 2013 14:40:56 -0800 Subject: [PATCH] random: speed up uniform-random-float. --- basis/random/random.factor | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/basis/random/random.factor b/basis/random/random.factor index 7d2bfc55a8..9eb914d368 100644 --- a/basis/random/random.factor +++ b/basis/random/random.factor @@ -28,7 +28,8 @@ M: object random-bytes* ( n tuple -- byte-array ) HINTS: M\ object random-bytes* { fixnum object } ; -M: object random-32* ( tuple -- r ) 4 swap random-bytes* be> ; +M: object random-32* ( tuple -- r ) + 4 swap random-bytes* c:uint deref ; ERROR: no-random-number-generator ; @@ -121,7 +122,7 @@ ERROR: too-many-samples seq n ; float ] curry bi@ + [ random-32* ] keep random-32* [ >float ] bi@ 2.0 32 ^ * + [ over - 2.0 -64 ^ * ] dip * + ; inline