Variable *RANDOM-STATE*

UP


Variable *RANDOM-STATE*

Variable *RANDOM-STATE*

値の型

乱数状態

初期値

実装依存

定義

現在の乱数状態として使用されます。 例えば、関数randomでは乱数状態を明に指定しないときに使用されます。

例文

(random-state-p *random-state*) =>  true
(setq snap-shot (make-random-state))
;; この列はどの時点においてもランダムですが、
;; ある時点でやり直したときは同じ列を取得できます。
(list (loop for i from 1 to 10 collect (random))
      (let ((*random-state* snap-shot))
        (loop for i from 1 to 10 collect (random)))
      (loop for i from 1 to 10 collect (random))
      (let ((*random-state* snap-shot))
        (loop for i from 1 to 10 collect (random))))
=> ((19 16 44 19 96 15 76 96 13 61)
    (19 16 44 19 96 15 76 96 13 61)
    (16 67 0 43 70 79 58 5 63 50)
    (16 67 0 43 70 79 58 5 63 50))

影響

実装。
random

参考

make-random-state, random, random-state

備考

*random-state*を 正しく保存された別の乱数状態オブジェクトに束縛すると 古い乱数状態オブジェクトが復元されます。


TOP, Github