Dconf 2015 talks...
Joseph Rushton Wakeling via Digitalmars-d
digitalmars-d at puremagic.com
Mon Jan 25 09:19:05 PST 2016
On Monday, 25 January 2016 at 15:38:45 UTC, Era Scarecrow wrote:
> Hmm i wonder... If recognizes it as infinite, could it avoid
> treating them as forward ranges? As a struct it still wouldn't
> work, but as a class/reference type it would work then...
They shouldn't be forward ranges anyway, because if their content
is randomly generated then it's not legit for them to implement
the .save property. The whole implementation of stuff in
std.random via forward ranges is a massive design mistake.
Implementing the random algorithms/other wrappers as a class is
problematic because then you get into the hassle of potentially
having to new/free a lot of individual heap objects deep in the
inner loop of your program. I already tried this in hap.random,
and came to the conclusion that it wasn't a valid approach.
More information about the Digitalmars-d
mailing list