On Mon, May 23, 2016 at 5:41 PM, Chris Barker <chris.barker@noaa.gov> wrote:
>
> On Sun, May 22, 2016 at 2:35 AM, Robert Kern <robert.kern@gmail.com> wrote:
>>
>> Well, I mean, engineers want lots of things. I suspect that most engineers *really* just want to call `numpy.random.seed(8675309)` at the start and never explicitly pass around separate streams. There's an upside to that in terms of code simplicity. There are also significant limitations and constraints. Ultimately, the upside against the alternative of passing around RandomState objects is usually overweighed by the limitations, so best practice is to pass around RandomState objects.
>
> Could we do something like the logging module, and have numpy.random "manage" a bunch of stream objects for you -- so you could get the default single stream easily, and also get access to specific streams without needing to pass around the objects?

No, I don't think so. The logging module's namespacing doesn't really have an equivalent use case for PRNGs. We would just be making a much more complicated global state to manage.

--
Robert Kern