On Monday, 10 March 2014 at 14:50:27 UTC, Vladimir Panteleev wrote:
From time to time, there are discussions concerning ideas which would impact the language, as it is now, too drastically to be implemented (it would break too much code or require a significant reengineering effort). These discussions get lost, which is regrettable since some of the discussions sometimes produce genuinely great ideas.

Although there is no D3 on the horizon, I think it would be nice to keep track of these ideas anyway.

http://wiki.dlang.org/Language_issues

I imagine that someone else could write it better than I, but having to explicitly break out of safe, pure, nothrow, etc. should be the default, rather than the reverse.

Of course, no option has to be language breaking. If two alternate implementations are incompatible, you can add a version/feature flag to the compiler and deprecate the older versions over time. Releasing a new version of the compiler which breaks everything ever made is bad, but if people have 12 months and a working compiler for both versions, moving over to the new expectations isn't unreasonable.

Reply via email to