On Friday, 23 February 2018 at 02:31:34 UTC, Jonathan M Davis wrote:
We deprecate stuff when we need to, but every time we deprecate something, it breaks code (even if it's not immediate breakage), so the benefits that come from a deprecation need to be worth the breakage that it causes. Every D program on the planet which isn't completely trivial uses imports, and many of them use selective imports. So, you're talking about breaking a large percentage of the existing programs for a syntax change. That's not likely to go over well. Large breakage like that can be acceptable when it clearly fixes bugs but not just for aesthetics.

- Jonathan M Davis


oh..and really, there should be no need to deprecate anything here anyway.

surely D can handle the current way of doing imports (not including that rubbish in beta), and also a new way for those that want to use it, or those that want put stuff on a single line.

import std.stdio, std.whatever[this, that], std.somethingelse, std.grr[wtf];

This new syntax that I'm proposing (after reviewing discussions here) seems like a sensible change. It's very easy for the brain to chunk into components (unlike that rubbish in beta), and it introduces thinking about 'selective imports' as just being an array of selections, using the same array like syntax used elsewhere in D.

I would be interested to see what controversy would result from this new proposal, compared to the current change in beta.

Reply via email to