Dconf 2015 talks...
Era Scarecrow via Digitalmars-d
digitalmars-d at puremagic.com
Mon Jan 25 05:05:46 PST 2016
Finally getting around to watching all the talks, all good stuff
:) Figured I'd make a thread talking about things I came across
and perhaps get into a discussion on them in detail.
Anyways I'm watching the talk with Joseph Wakeling involving RNG
and I wonder, is that still a problem or not?
I ask since the simplest and most correct thing I can think of
is to use the heap for a referenced state, and dup would then
duplicate the state properly while otherwise the RNG problems go
away that most of the talk went on about.
It's possible I've been out of the loop and this has already
been solved. Not sure yet, I haven't looked closely at any of the
sources or the language updates.
So... time for some rusty D prototyping.
[code]
struct RNG {
int* state;
this(int seed) {
state = new int;
*state = seed;
}
//if you provide a pointer, we don't rely on the heap/gc at
all...
//maybe a small stack based allocator could be useful for this?
this(int* seed) { state = seed; }
//dup instead of save, so it's not a forward range
RNG dup() { return RNG(*state); }
//popfront, front & empty as expected
}
[/code]
More information about the Digitalmars-d
mailing list