summaryrefslogtreecommitdiffstats
path: root/rand.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2016-04-28 06:20:51 -0700
committerKaz Kylheku <kaz@kylheku.com>2016-04-28 06:20:51 -0700
commitd0c176d3cc719d136cd3c19eb1d057193300b407 (patch)
tree1f2bd03224e42d40d1c275c7244534fc3a46e1dd /rand.c
parent10fc6e23661ad004591936b5c28b9cb17e596b8f (diff)
downloadtxr-d0c176d3cc719d136cd3c19eb1d057193300b407.tar.gz
txr-d0c176d3cc719d136cd3c19eb1d057193300b407.tar.bz2
txr-d0c176d3cc719d136cd3c19eb1d057193300b407.zip
Move PRNG-related initialization to rand.c
* eval.c (eval_init): Remove registration of make-random-state, random-state-get-vec, random-state-p, random-fixnup, random, and rand. * rand.c (rand_init): Move registrations removed from eval_init here.
Diffstat (limited to 'rand.c')
-rw-r--r--rand.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/rand.c b/rand.c
index ccf3846e..7509c237 100644
--- a/rand.c
+++ b/rand.c
@@ -299,4 +299,13 @@ void rand_init(void)
random_state_var_s = intern(lit("*random-state*"), user_package);
random_state_s = intern(lit("random-state"), user_package);
reg_var(random_state_var_s, make_random_state(num_fast(42)));
+
+ reg_fun(intern(lit("make-random-state"), user_package),
+ func_n1o(make_random_state, 0));
+ reg_fun(intern(lit("random-state-get-vec"), user_package),
+ func_n1o(random_state_get_vec, 0));
+ reg_fun(intern(lit("random-state-p"), user_package), func_n1(random_state_p));
+ reg_fun(intern(lit("random-fixnum"), user_package), func_n1o(random_fixnum, 0));
+ reg_fun(intern(lit("random"), user_package), func_n2(random));
+ reg_fun(intern(lit("rand"), user_package), func_n2o(rnd, 1));
}