Initialization sequence for RNG was depending on fact that
authorChris Hanson <org/chris-hanson/cph>
Tue, 25 Sep 2001 04:33:50 +0000 (04:33 +0000)
committerChris Hanson <org/chris-hanson/cph>
Tue, 25 Sep 2001 04:33:50 +0000 (04:33 +0000)
REAL-TIME-CLOCK was inline-coded.

v7/src/runtime/random.scm

index d30afcf82231906fa0cd13c2e3a8e4c6f3d9f000..9dcf9630535bef902736c13a8b608fd55355821a 100644 (file)
@@ -1,8 +1,8 @@
 #| -*-Scheme-*-
 
-$Id: random.scm,v 14.23 2000/04/11 03:46:50 cph Exp $
+$Id: random.scm,v 14.24 2001/09/25 04:33:50 cph Exp $
 
-Copyright (c) 1993-2000 Massachusetts Institute of Technology
+Copyright (c) 1993-2001 Massachusetts Institute of Technology
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
@@ -16,7 +16,8 @@ General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+02111-1307, USA.
 |#
 
 ;;;; Random Number Generator
@@ -114,11 +115,14 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
                                        (char->integer (read-char port)))))
                             ((< n b) n)
                             (else (outer)))))))))
-           (initial-random-state
-            (congruential-rng (+ (real-time-clock) 123456789))))
+           (simple-random-state))
        (copy-random-state
         (guarantee-random-state state 'MAKE-RANDOM-STATE)))))
 
+(define (simple-random-state)
+  (initial-random-state
+   (congruential-rng (+ ((ucode-primitive real-time-clock)) 123456789))))
+
 (define (initial-random-state generate-random-seed)
   ;; The numbers returned by GENERATE-RANDOM-SEED are not critical.
   ;; Except for the explicitly disallowed sequences, all other
@@ -204,9 +208,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 (define *random-state*)
 
 (define (initialize-package!)
-  (set! *random-state*
-       (initial-random-state
-        (congruential-rng (+ (real-time-clock) 123456789))))
+  (set! *random-state* (simple-random-state))
   unspecific)
 
 (define (finalize-random-state-type!)