SE-0202 Amendment Proposal: Rename Random to DefaultRandomNumberGenerator

After re-reading Benjamin’s pitch twice, I can not find any argument that the name Random is misleading. It contains only argument that users should consider other sources of randomness than the default — which means they should consider rolling their own implementations of RandomNumberGenerator protocol, I’m guessing mostly some PRNGs. This is already served by all the random methods on numeric types and collections that take the inout using: argument.

Renaming the struct Random to the pitched horribly overlong name would preclude future extensions as described by @Alejandro here, as well as ruin a convenient semantically meaningful point to hang user’s custom extension off of (Random serving as namespace, completely in line with Alejandro’s vision).

I really don’t understand the motivation for this amendment at all. I can see it causing a lot of harm and can not find a single reason why. Can somebody spell it out for me, please? (@bzamayo, @Ben_Cohen)

5 Likes