On Wednesday, 24 June 2015 at 14:16:04 UTC, Jonathan M Davis wrote:
Is there any point in doing this if we're going to be redesigning std.random as you've been working on? In fact, it could get in the way of that, since we could potentially just make the new version be modules in the package, and the old version be in std.random.package (meaning that if you imported std.random, you get the old, deprecated stuff, and if you import std.random.foo, you get the new stuff).

Interesting point. My own impression, based on discussions at DConf, was that it ought to be possible to proceed to "good" RNG solutions via a deprecation path from existing functionality, by things like deprecating (and then disabling) implicit copy, and so on. That would avoid any need for maintaining old and new side by side.

However, it might be worth taking the approach you suggest -- developing new stuff in parallel, deprecating old stuff, and finally removing the old std.random functionality entirely in favour of public import of the new stuff.

I certainly don't mind putting this on the back burner until "what a proper solution looks like" is ironed out.

Reply via email to