I recently wrote a blog post about my explorations into random number 
generation from Elixir and Erlang. You can find it here:
https://hashrocket.com/blog/posts/the-adventures-of-generating-random-numbers-in-erlang-and-elixir

This led me to question why `:rand.seed` is not exposed from Elixir without 
hitting Erlang directly. I think every time we send a user to learn 
something about the intricacies of Erlang we are introducing a mental 
overhead.

I would be happy to submit a pull request that will attempt to wrap 
`:rand.seed` but figured I'd check with the core team first. My questions:

1. Why is `:rand.seed` not exposed from Elixir? is that by design?
2. If it should be exposed by Elixir where do you imagine it living? 
`Kernel.seed`? or should we create a new `Random` module.
3. Would it make sense to provide a method that will just securly seed rand 
like so

<< i1 :: unsigned-integer-32, i2 :: unsigned-integer-32, i3 :: 
unsigned-integer-32>> = :crypto.strong_rand_bytes(12):rand.seed(:exsplus, {i1, 
i2, i3})

4. Anything else I should consider if I submit a pull request other than 
obvious testing and documentation


Thanks so much for your attention and feedback!

Dorian

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elixir-lang-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/577910ae-2a52-49f4-9e77-670639106a3c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to