From: Brian Gray (briangray_at_[hidden])
Date: 2003-04-15 12:02:26
I agree it should be const. I don't believe the change in return
values between calls necessarily must be dependent on the current call.
Randomness can be -- and often is -- implemented by external means,
such as radioactive decay or atmospheric noise. If the implementation
consults an external hardware device or network source to obtain the
current random number, the observable state of the object does not
change. To declare it to be so via making the call non-const is akin
to advertising an implementation detail.