title: Why are c++11 random distributions mutable?
body: <p>I thought that the value generated by the c++11 random distribution (<code>uniform_int_distribution</code>, for instance), depends only on the state of the generator which is passed to the <code>operator()</code>. However, for some reason there is no <code>const</code> specifier in the signature of <code>operator()</code>. What does that mean, and how should I pass the distribution as a function parameter? I thought I had to pass it as any non-mutable parameter: by const reference, but now I'm not sure.</p>