Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

all: decide on the hyphenation of pseudorandom vs pseudo-random? #25959

Open
bradfitz opened this issue Jun 19, 2018 · 5 comments

Comments

@bradfitz
Copy link
Member

commented Jun 19, 2018

The docs for crypto/rand contain both "pseudorandom" and "pseudo-random" for the same part of speech.

Decide which to use.

Also, the package doc says:

Package rand implements a cryptographically secure pseudorandom number generator.

But the Reader says:

Reader is a global, shared instance of a cryptographically strong pseudo-random generator.

Is it cryptographically "strong" or is it "secure"? Can we pick a word there too?

Or can we just remove "pseudorandom" altogether? I feel like it makes it sound too much like math/rand.

Can we just say "cryptographically secure random number generator"?

/cc @FiloSottile @agl @ianlancetaylor

@bradfitz bradfitz added this to the Go1.11 milestone Jun 19, 2018

@ianlancetaylor

This comment has been minimized.

Copy link
Contributor

commented Jun 19, 2018

@smasher164

This comment has been minimized.

Copy link
Member

commented Jun 19, 2018

I see what you meant by your comment now :)
It looks like "pseudorandom" is a valid English word:
https://www.merriam-webster.com/dictionary/pseudorandom
Additionally, words with the prefix "pseudo-" are apparently not hyphenated:
http://www.mit.edu/course/21/21.guide/hyphen.htm

Secure vs Strong: If we had to choose, I'd go with secure since even the man page for /dev/[u]random mentions the following under "Usage":

the output is cryptographically secure against attackers without local root access as soon as it is reloaded in the boot sequence

TLDR, we may want to mention that crypto/rand implements a CSPRNG (cryptographically secure pseudorandom number generator).

@robpike

This comment has been minimized.

Copy link
Contributor

commented Jun 19, 2018

I prefer pseudo-random and that's what math/rand uses, so that's my vote.

Generally, in English phrases become adjectives by hyphenation, and then after a long period of consistent usage the hyphens drop, but I don't believe pseudo-random is ready to lose its hyphen yet.

@FiloSottile

This comment has been minimized.

Copy link
Member

commented Jun 19, 2018

"cryptographically secure random number generator"

Too many people go from that "pseudo" to "but I need real randomness!" and then you end up with /dev/random.

@gopherbot

This comment has been minimized.

Copy link

commented Jun 19, 2018

Change https://golang.org/cl/119875 mentions this issue: crypto/rand: make documentation consistent between package comment and Reader

@bradfitz bradfitz modified the milestones: Go1.11, Unplanned Jun 20, 2018

@bradfitz bradfitz changed the title crypto/rand: decide on the hyphenation of pseudorandom vs pseudo-random all: decide on the hyphenation of pseudorandom vs pseudo-random? Jun 20, 2018

gopherbot pushed a commit that referenced this issue Jun 20, 2018
crypto/rand: make documentation consistent between package comment an…
…d Reader

Updates #25959

Change-Id: I9ae64b216ab5807718db0db98b32de1dc5fa4bec
Reviewed-on: https://go-review.googlesource.com/119875
Reviewed-by: Rob Pike <r@golang.org>
Reviewed-by: Filippo Valsorda <filippo@golang.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.