News for hackers. Stuff that matters.
Re:Thoughts on Rust bloat by ChrisSD on Thursday August 22, 2019 @08:05AM (#20767101)
But the std hashmap implementation[0] already depends on a PRNG via the rand crate[1], and thus OS random (for the initial seed). So it's in the standard library even if you can't use it directly. Which is what makes me think this is an API issue, not an implementation one.

[0]: https://doc.rust-lang.org/std/collections/hash_map/struct.Ra...

[1]: https://docs.rs/rand/0.7.0/rand/rngs/struct.ThreadRng.html

Re:Thoughts on Rust bloat by anp on Thursday August 22, 2019 @10:06AM (#20768184)
It does depend on this yes, but the random seed isn’t part of the public API. An RNG API in std would need to pick an algorithm and make that part of its stability guarantees.
Re:Thoughts on Rust bloat by ChrisSD on Thursday August 22, 2019 @10:57AM (#20768790)
In this case I'd quibble that it wouldn't need to guarantee a specific algorithm, just a minimal set of properties. If the user can't manually set the seed then they'll be no expectation that it's deterministic or follows any particular algorithm. So the precise implementation can change with versions or even platforms.

Javascript's Math.random and Crypto.getRandomValues works this way.

Re:Thoughts on Rust bloat by anp on Thursday August 22, 2019 @01:20PM (#20770346)
Id say that in Rust’s case, we’ve already seen several painful examples of Hyrum’s law.

http://www.hyrumslaw.com/